if (!JS_STAM) { var JS_STAM = new Object(); }
JS_STAM.hpHandler = {
 	debug : false,
	init : function() { JS_STAM.hpHandler.slideshow.init(); },
	_eoo : true
}
JS_STAM.hpHandler.slideshow = {
 	waitTime : 5000,
	fadeTime : 1000,
	timeId : null,
	slides : null,
 	numSlides : 0,
	curSlide : 0,
	numLoaded : 0,
	init : function() {
		if (JS_STAM.hpHandler.debug)	console.log('JS_STAM.hpHandler.slideshow.init');
		JS_STAM.hpHandler.slideshow.slides 	= $('#slideshowNavigation .listholderItem a');
		JS_STAM.hpHandler.slideshow.numSlides	= JS_STAM.hpHandler.slideshow.slides.length;
		$('#slideshowImageEven').fadeOut(10).css('display','none');
		JS_STAM.hpHandler.slideshow.slides.bind('click', function(e) {
			e.preventDefault();
			if ($('.slideshowImage img:animated').length > 0)	return;
			$(JS_STAM.hpHandler.slideshow.slides.get(JS_STAM.hpHandler.slideshow.curSlide)).parent().removeClass('selected');
			JS_STAM.hpHandler.slideshow.curSlide = parseInt($(this).parent().attr('id').substr(14))-1;
			JS_STAM.hpHandler.slideshow.stopSlide();
		});
		JS_STAM.hpHandler.slideshow._preload();
	},
 	_preload : function() {
		var extImg = [];
		for (var i = 0; i < JS_STAM.hpHandler.slideshow.slides.length; i++) {
			extImg[i] = new Image();
			extImg[i].src = $(JS_STAM.hpHandler.slideshow.slides.get(i)).attr('rel');
			if (extImg[i].complete) { JS_STAM.hpHandler.slideshow._loaded(); } 
			else {
				extImg[i].onerror = function() { JS_STAM.hpHandler.slideshow._loaded(); }
				extImg[i].onload = function() { JS_STAM.hpHandler.slideshow._loaded(); }
			}
		}
	},
	_loaded : function() {
		JS_STAM.hpHandler.slideshow.numLoaded++;
		if (JS_STAM.hpHandler.slideshow.numLoaded == JS_STAM.hpHandler.slideshow.numSlides) { JS_STAM.hpHandler.slideshow.timeId = window.setTimeout(JS_STAM.hpHandler.slideshow.nextSlide, JS_STAM.hpHandler.slideshow.waitTime); }
	},
	nextSlide : function() {
		if (JS_STAM.hpHandler.debug)	console.log('JS_STAM.hpHandler.slideshow.nextSlide');
		if ($('.slideshowImage img:animated').length > 0) return;
		$(JS_STAM.hpHandler.slideshow.slides.get(JS_STAM.hpHandler.slideshow.curSlide)).parent().removeClass('selected');
		if (JS_STAM.hpHandler.slideshow.curSlide == JS_STAM.hpHandler.slideshow.numSlides-1) JS_STAM.hpHandler.slideshow.curSlide = 0;
		else JS_STAM.hpHandler.slideshow.curSlide++;
		JS_STAM.hpHandler.slideshow.transSlide();
	},
	stopSlide : function() {
		if (JS_STAM.hpHandler.debug)	console.log('JS_STAM.hpHandler.slideshow.stopSlide');
		var slide	= $(JS_STAM.hpHandler.slideshow.slides.get(JS_STAM.hpHandler.slideshow.curSlide));
		window.clearTimeout(JS_STAM.hpHandler.slideshow.timeId);
		slide.parent().addClass('selected');
		$('.slideshowImage .button').attr('href', slide.attr('href'));
		var fOut	= $('.slideshowImage img:visible');
		var fIn		= $('.slideshowImage img:hidden');
		if (JS_STAM.hpHandler.debug)	console.log('fOut = ' + fOut.attr('id'));
		if (JS_STAM.hpHandler.debug)	console.log('fIn = ' + fIn.attr('id'));
		fOut.css('zIndex', 100).fadeOut(JS_STAM.hpHandler.slideshow.fadeTime, function() { $(this).css('display','none'); });
		fIn.css('zIndex', 50).attr('src', slide.attr('rel')).attr('alt', slide.attr('title')).attr('title', slide.attr('title')).css('display','block').fadeIn(JS_STAM.hpHandler.slideshow.fadeTime);	
	},
	transSlide : function() {
		if (JS_STAM.hpHandler.debug)	console.log('JS_STAM.hpHandler.slideshow.gotoSlide %d', JS_STAM.hpHandler.slideshow.curSlide);
		var slide	= $(JS_STAM.hpHandler.slideshow.slides.get(JS_STAM.hpHandler.slideshow.curSlide));
		window.clearTimeout(JS_STAM.hpHandler.slideshow.timeId);
		slide.parent().addClass('selected');
		$('.slideshowImage .button').attr('href', slide.attr('href'));
		var fOut	= $('.slideshowImage img:visible');
		var fIn		= $('.slideshowImage img:hidden');
		if (JS_STAM.hpHandler.debug)	console.log('fOut = ' + fOut.attr('id'));
		if (JS_STAM.hpHandler.debug)	console.log('fIn = ' + fIn.attr('id'));
		fOut.css('zIndex', 100).fadeOut(JS_STAM.hpHandler.slideshow.fadeTime, function() { $(this).css('display','none'); });
		fIn.css('zIndex', 50).attr('src', slide.attr('rel')).attr('alt', slide.attr('title')).attr('title', slide.attr('title')).css('display','block').fadeIn(JS_STAM.hpHandler.slideshow.fadeTime, function(e) {
			JS_STAM.hpHandler.slideshow.timeId 	= window.setTimeout(JS_STAM.hpHandler.slideshow.nextSlide, JS_STAM.hpHandler.slideshow.waitTime);
		});	
	},
	_eoo : true
}
jQuery(function($) { JS_STAM.hpHandler.init(); });