var slideShow;

$(document).ready(function() {
    initPage();
    if (!$.browser.msie) {
        $('#practices a, a.practices, #exec p a').click(function() {return loadPractices(this.href);});
    }
});

if (templateName == 'homepage' && supersizeOk) {
    transitionType = 1;

    $(function(){
        $.fn.supersized.options = {
            startwidth: 1152,
            startheight: 721,
            vertical_center: 1,
            slideshow: 0,
            navigation: 0,
            transition: 0, //0-None, 1-Fade, 2-slide top, 3-slide right, 4-slide bottom, 5-slide left
            pause_hover: 0,
            slide_counter: 1,
            slide_captions: 0,
            slide_initial_speed: initialSlideSpeed,
            start_delay: slideStartDelay
        };

        $('#supersize').supersized();

        $('#sidenav ul a').click(function() {
            getPageContent(this.href); return false;
        });

        startSlideShow();
    });
}
else {
    transitionType = 0;
}

function initPage() {
    $('#supersize a').click(function() {
        return false;
    });

    if (window.location.pathname == '/' && templateName == 'homepage') {
        $('#hide-content').remove();
    }

}

function startSlideShow() {
    clearInterval(slideShow);
    slideShow = setInterval('changePage(true)', pauseBetweenSlides);
    if ($('#pauseplay span').length > 0) {
        $('#pauseplay').removeClass('paused');
    }
    else if ($('#pauseplay img').length > 0) {
        $('#pauseplay img').attr('src', '/img/pause.png');
    }
}

function changePage(forward) {
    clearInterval(slideShow);

    var sideNavLinks = $('#sidenav ul li a');
    var newIndex = 0;

    for (var i = 0; i < sideNavLinks.length; i++) {
        var linkParent = $(sideNavLinks[i]).parent();

        if ($(linkParent[0]).hasClass('selected')) {
            if (forward) {
                newIndex = i + 1;
                break;
            }
            else {
                newIndex = i - 1;
                break;
            }
        }
    }

    if (newIndex < 0) {
        newIndex = sideNavLinks.length - 1;
    }
    else if (newIndex > sideNavLinks.length - 1) {
        newIndex = 0;
    }

    var url = $(sideNavLinks[newIndex]).attr('href');

    if (url != null) {
        getPageContent(url);
    }
}

function getPageContent(url) {
    clearInterval(slideShow);
    $.ajax({
        url: url,
        success: function(data) {
            showNewPage(data, url);
        }
    });
}

function showNewPage(data, url) {
    $('#sidenav ul li').removeClass('selected');
    var sideNavLinks = $('#sidenav ul li a');

    for (var i = 0; i < sideNavLinks.length; i++) {
        var linkParent = $(sideNavLinks[i]).parent();
        var testUrl = url.substring(url.lastIndexOf('/'));

        if (testUrl == $(sideNavLinks[i]).attr('href') && !$(linkParent[0]).hasClass('selected')) {
            $(linkParent[0]).addClass('selected');
        }
    }

    var contentReplaced = false;
    var newSlide = $('.supersize-img', data);

    if (newSlide.length > 0) {
        refreshCaption(newSlide.attr('title'));
        $('#homepage').css('background-image', 'none');

        $('.supersize-img').fadeOut(400, function() {
            $('.supersize-img').replaceWith(newSlide.parent()[0].innerHTML);
            $('.supersize-img').fadeIn(400);
        });

        contentReplaced = true;
    }

    var entryContent = $('#homecontent', data);
    if (entryContent.length > 0) {
        entryContent = entryContent[0].innerHTML;

        if (entryContent != '') {
            refreshEntryContent(entryContent);
            contentReplaced = true;
        }
    }

    if (contentReplaced) {
        clearInterval(slideShow);
        startSlideShow();
    }
}

function togglePause(pause) {
    if (pause) {
        clearInterval(slideShow);
        if ($('#pauseplay span').length > 0) {
            $('#pauseplay').addClass('paused');
        }
        else if ($('#pauseplay img').length > 0) {
            $('#pauseplay img').attr('src', '/img/play.png');
        }
    }
    else {
        startSlideShow();
    }

    $('#pauseplay').unbind('click');
    $('#pauseplay').click(function() {
        togglePause(!pause);
    });
}

function refreshCaption(newCaption) {
    $('#slidecaption').html(newCaption);
}

function refreshEntryContent(newEntryContent) {
    $('#homecontent').html(newEntryContent);
}

function loadPractices(url) {
    $.ajax({
        url: url,
        success: function(data) {
            showPractices(data);
        }
    });
    return false;
}

function showPractices(data) {
    function  gotop(){
        var targetOffset = 0;
        var actualofset = $('html, body').scrollTop() ;
        if (targetOffset != actualofset) {
            $( 'html, body' ).animate( {
                scrollTop: targetOffset
            }, 'slow' );
        }
    }

    if ($('#blackout').length == 0) {
        $('body').append('<div id="blackout" class="mainpage"></div>');
        var newPanel = $('#panel', data);
        $(newPanel).attr('id', 'sub-panel');

        $('#blackout').append(newPanel);
        $('a.practices').click(function() {
            return loadPractices(this.href);
        });
        $('#blackout').fadeIn('fast', gotop());

        $('a.btm').click(function() {
            $('#blackout').remove();
        });
    }
    else {
        var newPanel = $('#panel', data);
        $(newPanel).attr('id', 'sub-panel');

        $('#sub-panel').find('*').fadeOut('fast', function () {
            $('#sub-panel').html($(newPanel).html());
            $('a.practices').click(function() {
                return loadPractices($(this).attr('href'));
            });
            $('#sub-panel').children().fadeIn('fast');
            $('a.btm').click(function() {
                $('#blackout').remove();
            });
        });
    }
     
    
}
