$(function() {
	$("div.calenderbtn a").fancybox({
		'width'				: '75%',
		'height'			: '75%',
		'autoScale'			: false,
		'transitionIn'		: 'elastic',
		'transitionOut'		: 'none',
		'type'				: 'iframe'
	});
    
    //Main Carrousel
    var mainMove = 690;
    var mainPanels = $('div#showcase div.wrap div.inwrap > div').size() - 1;
    var currentMainPage = 0;
    var mainPages = mainPanels - 1;
    var mainFirstScrollLeft;
    var animated = false;
    var mainCarrouselInterval = 5000;

    var mainInterval;
    function setMainInterval() {
        clearInterval(mainInterval);
        mainInterval = setInterval(function(){
           goToMainPage(parseInt(currentMainPage) + 1);
        }, mainCarrouselInterval);
    }

    function thumbnailActiveChange(page) {
        var thumbnailEventHandler = function() {
            goToMainPage($(this).attr('ref'));
        };

        $('div#showcase div.thumarea').find('img').each(function(){
            if (page == $(this).attr('ref') && $(this).attr('src').indexOf("_active") == -1) {
                $(this).attr('src', $(this).attr('src').replace(/^(.+)(\.[a-z]+)$/, '$1_active$2'));
                $(this).unbind('click').css({cursor: 'auto'});
            } else {
                $(this).attr('src', $(this).attr('src').replace(/^(.+)_active(\.[a-z]+)$/, '$1$2'));
                $(this).unbind('click').bind('click', thumbnailEventHandler).css({cursor: 'pointer'});;
            }
        });
    }

    function goToMainPage(page){
        var moved;
        if (page > mainPages) {
            page = 0;
            moved = (mainPanels - 1) * mainMove;
        } else if (page < 0) {
            page = mainPages;
            moved = (mainPanels - 1) * mainMove;
        } else {
            moved = mainMove;
        }

        moved = Math.abs((currentMainPage - page) * mainMove);
        

        var arrival;
        if (page > currentMainPage) {
            arrival = $('div#showcase div.wrap').scrollLeft() + moved;
        } else {
            arrival = $('div#showcase div.wrap').scrollLeft() - moved;
        }

        if (!animated) {
            clearInterval(mainInterval);
            thumbnailActiveChange(page);
        }

        animated = true;
        $('div#showcase div.wrap').filter(':not(:animated)').animate({
            scrollLeft: arrival
        }, {
            queue:false,
            duration:800,
            easing:'easeOutQuart',
            complete: function() {
                currentMainPage = page;
                setMainInterval();
                animated = false;
            }
        });

        return false;
    }

    $('div#showcase div.wrap div.inwrap').css({'width': mainPanels * mainMove + 'px', 'height': '350px'});
    $('div#showcase div.lefbtn').click(function(){
        return goToMainPage(currentMainPage - 1);
    }).css({cursor: 'pointer'});
    $('div#showcase div.rigbtn').click(function(){
        return goToMainPage(currentMainPage + 1);
    }).css({cursor: 'pointer'});
    
    setMainInterval();
    
    
    //LineUp Carrousel
    var lineupMove = 121;
    var lineupPanels = $('div#lineup div.inrbx div.wrap div.inwrap > div').size() -1;
    var currentLineupPage = 0;
    var lineupPages = lineupPanels - 5;

    function goToLineupPage(page){
        var moved = -page * lineupMove;
        if (page > lineupPages) {
            page = lineupPages;
            moved = -page * lineupMove;
            
            $('div#lineup div.inrbx div.wrap div.inwrap').filter(':not(:animated)').css({'margin-left': (moved - 5) + 'px'});
        } else if (page < 0) {
            page = 0;
            moved = 0;
            $('div#lineup div.inrbx div.wrap div.inwrap').filter(':not(:animated)').css({'margin-left': (moved + 5) + 'px'});
        }

        
        $('div#lineup div.inrbx div.wrap div.inwrap').filter(':not(:animated)').animate({
            marginLeft: moved + 'px'
        }, {
            queue:false,
            duration:300,
            easing:'easeOutQuart',
            complete: function() {
                currentLineupPage = page;
            }
        });

        return false;
    }

    $('div#lineup div.inrbx div.wrap div.inwrap').css({'width': lineupPanels * lineupMove + 'px', 'height': '105px'});
    $('div#lineup div.lefbtn').click(function(){
        return goToLineupPage(currentLineupPage - 1);
    }).css({cursor: 'pointer'});
    $('div#lineup div.rigbtn').click(function(){
        return goToLineupPage(currentLineupPage + 1);
    }).css({cursor: 'pointer'});
    
    //splink Carrousel
    var splinkMove = 167;
    var splinkPanels = $('div#splink div.inrbx div.wrap div.inwrap > div').size() -1;
    var currentSplinkPage = 0;
    var splinkPages = splinkPanels - 4;

    function goToSplinkPage(page){
        var moved = -page * splinkMove;
        if (page > splinkPages) {
            page = splinkPages;
            moved = -page * splinkMove;
            
            $('div#splink div.inrbx div.wrap div.inwrap').filter(':not(:animated)').css({'margin-left': (moved - 5) + 'px'});
        } else if (page < 0) {
            page = 0;
            moved = 0;
            $('div#splink div.inrbx div.wrap div.inwrap').filter(':not(:animated)').css({'margin-left': (moved + 5) + 'px'});
        }

        
        $('div#splink div.inrbx div.wrap div.inwrap').filter(':not(:animated)').animate({
            marginLeft: moved + 'px'
        }, {
            queue:false,
            duration:300,
            easing:'easeOutQuart',
            complete: function() {
                currentSplinkPage = page;
            }
        });

        return false;
    }

    $('div#splink div.inrbx div.wrap div.inwrap').css({'width': splinkPanels * splinkMove + 'px', 'height': '47px'});
    $('div#splink div.lefbtn').click(function(){
        return goToSplinkPage(currentSplinkPage - 1);
    }).css({cursor: 'pointer'});
    $('div#splink div.rigbtn').click(function(){
        return goToSplinkPage(currentSplinkPage + 1);
    }).css({cursor: 'pointer'});
});
