
var topBannerNum = 0;
var topBannerInterval, topBannerNavLinks, topBannerLinkElement;

document.observe('dom:loaded', function() {
    oTransition = new Transition('top-banner', firstTopBanner);
    topBannerLinkElement = $('top-banner');
    startTopBannerSlider();
    topBannerNavLinks = $$('#top-banner-nav a.top-banner-link');
    highlightCurrentTopBannerLink(topBannerNavLinks[topBannerNum ++]);
    topBannerNavLinks.each(function(item) {
        item.observe('click', function(event) {
            var link = event.element();
            stopTopBannerSlider();
            topBannerNum = link.id.split('-')[1];
            switchNextTopBannerNavLink(link);
        });
    });
});

function startTopBannerSlider() {
    topBannerInterval = setInterval(slideTopBanner, 5000);
    $('top-banner-control-img').src = topBannerPause;
    $('top-banner-control').stopObserving('click').observe('click', stopTopBannerSlider);
}

function stopTopBannerSlider() {
    clearInterval(topBannerInterval);
    $('top-banner-control-img').src = topBannerPlay;
    $('top-banner-control').stopObserving('click').observe('click', startTopBannerSlider);
}

function slideTopBanner() {
    var link = topBannerNavLinks[topBannerNum];
    oTransition.loadImage(link);
    switchNextTopBannerNavLink(link);
}

function highlightCurrentTopBannerLink(link) {
    topBannerNavLinks.each(function(item) {
        item.removeClassName('pagingactive').addClassName('paging');
    });
    link.removeClassName('paging').addClassName('pagingactive');
}

function switchNextTopBannerNavLink(link) {
    highlightCurrentTopBannerLink(link);
    topBannerLinkElement.href = topBannerLinks[topBannerNum];
    if (++ topBannerNum == topBannerNavLinks.length) {
        topBannerNum = 0;
    }
}
