var SLIDESHOW_GAP = 20;
var SLIDESHOW_WIDTH = 558;
var SLIDESHOW_INTRO_SPEED = 500;
var SLIDESHOW_SLIDE_SPEED = 250;
var SLIDESHOW_COUNT = 0;
var SLIDESHOW_SHOWING = -1;
var SLIDESHOW_ANIMATE = true;
var SLIDESHOW_ANIMATE_DELAY = 4000;
var SLIDESHOW_TIMEOUT = null;

function slideshowShow( idx, speed ) {
	SLIDESHOW_SHOWING = idx;
	if( SLIDESHOW_SHOWING >= SLIDESHOW_COUNT || SLIDESHOW_SHOWING < 0 )
		SLIDESHOW_SHOWING = 0;
	jQuery('#tpl_navibox_slideshow img').each(function(){
		// Move slides into place
		var img = jQuery(this);
		var slideidx = img.attr('slideidx');
		
		// Set up slide details
		if( slideidx <= SLIDESHOW_SHOWING )
			img.clearQueue().animate({ left: slideidx*SLIDESHOW_GAP }, speed );
		else
			img.clearQueue().animate({ left: SLIDESHOW_WIDTH-(SLIDESHOW_COUNT-slideidx)*SLIDESHOW_GAP }, speed );
	});
}

function slideshowNext() {
	slideshowShow( SLIDESHOW_SHOWING + 1, SLIDESHOW_SHOWING == -1 ? SLIDESHOW_INTRO_SPEED : SLIDESHOW_SLIDE_SPEED );
	
	// Show next slide automatically
	if( SLIDESHOW_ANIMATE )
		SLIDESHOW_TIMEOUT = window.setTimeout( slideshowNext, SLIDESHOW_ANIMATE_DELAY );
}

jQuery(function(){
	jQuery('#tpl_navibox_slideshow img').each(function(){
		// Move slides into place
		var img = jQuery(this);
		
		// Set up slide details
		SLIDESHOW_SHOWING = SLIDESHOW_COUNT;
		img.attr( 'slideidx', SLIDESHOW_COUNT );
		
		// Configure mouseover for slides
		img.mouseover(function(){
			SLIDESHOW_ANIMATE = false;
			if( SLIDESHOW_TIMEOUT != null ) {
				window.clearTimeout( SLIDESHOW_TIMEOUT );
				SLIDESHOW_TIMEOUT = null;
			}
			slideshowShow( jQuery(this).attr('slideidx'), SLIDESHOW_SLIDE_SPEED );
		});
		
		// Move slide into place
		img.css({ left: SLIDESHOW_WIDTH });
		img.delay( SLIDESHOW_COUNT*SLIDESHOW_SLIDE_SPEED ).animate({ left: SLIDESHOW_COUNT*SLIDESHOW_GAP });
		
		SLIDESHOW_COUNT++;
	});
	
	SLIDESHOW_TIMEOUT = window.setTimeout( slideshowNext, SLIDESHOW_ANIMATE_DELAY );
});


