$(document).ready(function(){
    window.pause = 4000;
    window.fadeTime = 700;
    $("#frontpageTopgallery").find("li.objectHolder:not(:eq(0))").hide();
    window.timeoutId = setTimeout("fadeNext()",window.pause);
    
    $(".switcher").find("li").click(function(){
    	$("#frontpageTopgallery").find("li.objectHolder").stop(true);
    	clearTimeout(window.timeoutId);
    	btnShiftClick($(this));
    	return false;
    });    
});

function fadeNext() {
    var visibleElement = $("#frontpageTopgallery").find("li.objectHolder:visible");
    var amountOfElements = $("#frontpageTopgallery").find("li.objectHolder").size();
    
    if((visibleElement.index()+1) == amountOfElements) {
    	visibleElement.fadeOut(window.fadeTime,function() {
    		btnShiftAuto(true);
    		$("#frontpageTopgallery").find("li.objectHolder:first").fadeTo(window.fadeTime,1,function(){
    			clearTimeout(window.timeoutId);
    			window.timeoutId = setTimeout("fadeNext()",window.pause);
    		});
    	});

    }
    else {
    	visibleElement.fadeOut(window.fadeTime,function(){
    		btnShiftAuto();
    		visibleElement.next().fadeTo(window.fadeTime,1,function(){
    			clearTimeout(window.timeoutId);
    			window.timeoutId = setTimeout("fadeNext()",window.pause);
    		});
    	});
    }
}

function btnShiftClick(element) {
    
    var clickFadeTime = 300;
    $("#frontpageTopgallery").find("li.objectHolder").stop(true);
    $(".switcher").find("li.active").removeClass("active");
    element.addClass("active");
    
    var elementIndex = element.index();
    
    if($("#frontpageTopgallery").find("li.objectHolder:visible").index() != elementIndex) {
    	$("#frontpageTopgallery").find("li.objectHolder:visible").fadeOut(clickFadeTime,function(){
    		$("#frontpageTopgallery").find("li.objectHolder:eq("+elementIndex+")").fadeTo(clickFadeTime,1,function(){
    			window.timeoutId = setTimeout("fadeNext()",window.pause);
    		});
    		
    	});
    }
    else {
    	$(".fader").find("li:eq("+elementIndex+")").fadeTo(clickFadeTime,1,function(){
    		window.timeoutId = setTimeout("fadeNext()",window.pause);
    	});
    }
}

function btnShiftAuto(first) {
    var fromElement = $(".switcher").find("li.active");
    fromElement.removeClass("active");
    if(first) {
    	$(".switcher").find("li:first").addClass("active");
    }
    else {
    	fromElement.next().addClass("active");
    }
}

