/*
 * Zitera JavaScript code
 */

(function($){  

    $.fn.s3Slider = function(vars) {       
        
        var element     = this;
        var timeOut     = (vars.timeOut != undefined) ? vars.timeOut : 4000;
        var current     = null;
        var currSlide	= 0;
        var nextSlide	= currSlide + 1;
        var timeOutFn   = null;
        var faderStat   = true;
        var mOver       = false;
        var items       = $("#" + element[0].id + "Content ." + element[0].id + "Image");
        var itemsSpan   = $("#" + element[0].id + "Content ." + element[0].id + "Image span");
        var buttons		= $("#sliderNavBox .sliderNavButton");
        var timerSet	= false;
            
        items.each(function(i) {
    
            $(items[i]).mouseover(function() {
               mOver = true;
            });
            
            $(items[i]).mouseout(function() {
                mOver   = false;
                resetSlideShowTimer();
            });
            
        });
        
        buttons.each(function(i) {
        	var button = $(buttons[i]);
        	button.click(function() {
        		nextSlide = $(this).attr("num") - 1;
        		mOver = true;
        		showSlide();
        	});
        });
        
        var showSlide = function () {
        	$(items[currSlide]).css('display','none');
        	$(items[nextSlide]).css('display','inline');
        	$(buttons[currSlide]).css('background-color','#555');
        	$(buttons[nextSlide]).css('background-color','#888');
        	currSlide = nextSlide;
        	nextSlide = (currSlide == (items.length - 1)) ? 0 : (currSlide + 1);
        }
        
        var resetSlideShowTimer = function() {
        	if( !timerSet ) {
        		setTimeout(autoShowSlide, timeOut);
            	timerSet = true;
        	}
        }
        
        var autoShowSlide = function() {
        	timerSet = false;
        	if(!mOver) {
        		$(items[currSlide]).fadeOut((timeOut/6), function() {
        			$(buttons[currSlide]).css('background-color','#555');
        			
        			$(items[nextSlide]).fadeIn((timeOut/6), function() {
        				$(buttons[nextSlide]).css('background-color','#888');
        				currSlide = nextSlide;
        				nextSlide = (currSlide == (items.length - 1)) ? 0 : (currSlide + 1);
        				
        				resetSlideShowTimer();
        			});
        		});
        	}
        }
        
        resetSlideShowTimer();
    };

})(jQuery);
