if (!JS_SP) { var JS_SP = new Object(); }
JS_SP.hpHandler = {
 	debug : true,
	init : function() { 
		JS_SP.hpHandler.slideshow.init(); 
	},
	_eoo : true
}
JS_SP.hpHandler.slideshow = {
 	waitTime : 6000,
	fadeTime : 700,
	timeId : null,
	slides : null,
 	numSlides : 0,
	curSlide : 0,
	numLoaded : 0,
	init : function()
	{
		// get slides
		JS_SP.hpHandler.slideshow.slides 	= $('.slideshow-navigation .listholder-item a');
		JS_SP.hpHandler.slideshow.numSlides	= JS_SP.hpHandler.slideshow.slides.length;
		
		// hide blank image
		$('#slideshow-image-even').fadeOut(10).css('display','none');
		
		// 
		JS_SP.hpHandler.slideshow.slides.bind('click', function(e) {
			e.preventDefault();
			if ($('.slideshow-image img:animated').length > 0)	return;
			$(JS_SP.hpHandler.slideshow.slides.get(JS_SP.hpHandler.slideshow.curSlide)).removeClass('selected');
			JS_SP.hpHandler.slideshow.curSlide = parseInt($(this).parent().attr('id').substr(16))-1;
			JS_SP.hpHandler.slideshow.transSlide();
		});
		
		
		$('.slideshow-navigation .previous a').bind('click', function(e) {
			e.preventDefault();
			JS_SP.hpHandler.slideshow.prevSlide();
		});
		
		$('.slideshow-navigation .next a').bind('click', function(e) {
			e.preventDefault();
			JS_SP.hpHandler.slideshow.nextSlide();
		});
		
		JS_SP.hpHandler.slideshow._preload();
	},
 	_preload : function()
 	{
		var extImg = [];
		for (var i = 0; i < JS_SP.hpHandler.slideshow.slides.length; i++) {
			extImg[i] = new Image();
			extImg[i].src = $(JS_SP.hpHandler.slideshow.slides.get(i)).attr('rel');
			if (extImg[i].complete) { JS_SP.hpHandler.slideshow._loaded(); } 
			else {
				extImg[i].onerror = function() { JS_SP.hpHandler.slideshow._loaded(); }
				extImg[i].onload = function() { JS_SP.hpHandler.slideshow._loaded(); }
			}
		}
	},
	_loaded : function()
	{
		JS_SP.hpHandler.slideshow.numLoaded++;
		if (JS_SP.hpHandler.slideshow.numLoaded == JS_SP.hpHandler.slideshow.numSlides) { JS_SP.hpHandler.slideshow.timeId = window.setTimeout(JS_SP.hpHandler.slideshow.nextSlide, JS_SP.hpHandler.slideshow.waitTime); }
	},
	
	nextSlide : function()
	{
		if ($('.slideshow-image img:animated').length > 0) return;
		$(JS_SP.hpHandler.slideshow.slides.get(JS_SP.hpHandler.slideshow.curSlide)).removeClass('selected');
		if (JS_SP.hpHandler.slideshow.curSlide == JS_SP.hpHandler.slideshow.numSlides-1) JS_SP.hpHandler.slideshow.curSlide = 0;
		else JS_SP.hpHandler.slideshow.curSlide++;
		JS_SP.hpHandler.slideshow.transSlide();
	},
	
	prevSlide : function()
	{
		if ($('.slideshow-image img:animated').length > 0)	return;
		$(JS_SP.hpHandler.slideshow.slides.get(JS_SP.hpHandler.slideshow.curSlide)).removeClass('selected');
		if (JS_SP.hpHandler.slideshow.curSlide == 0) JS_SP.hpHandler.slideshow.curSlide = JS_SP.hpHandler.slideshow.numSlides-1;
		else JS_SP.hpHandler.slideshow.curSlide--;
		JS_SP.hpHandler.slideshow.transSlide();
	},
	
	transSlide : function()
	{
		var slide	= $(JS_SP.hpHandler.slideshow.slides.get(JS_SP.hpHandler.slideshow.curSlide));
		
		window.clearTimeout(JS_SP.hpHandler.slideshow.timeId);
		
		slide.addClass('selected');
		
		$('.slideshow-image a.slideshowUrl').attr('href', slide.attr('href'));
		$('.slideshow-image div.caption span').html(slide.attr('title'));
		
		var fOut = $('.slideshow-image img:visible');
		var fIn	= $('.slideshow-image img:hidden');
		
		fOut.css('zIndex', 100).fadeOut(JS_SP.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_SP.hpHandler.slideshow.fadeTime, function(e) {
			JS_SP.hpHandler.slideshow.timeId = window.setTimeout(JS_SP.hpHandler.slideshow.nextSlide, JS_SP.hpHandler.slideshow.waitTime);
		});	
	},
	
	_eoo : true
}

jQuery(function($) { JS_SP.hpHandler.init(); });
