var theSlideshow = null;

function SlideshowClass(container)
{
	var slideshowContainer = document.getElementById(container);
	var slides = null;
	var numberOfSlides = 0;
	var displayedSlide = null;
	var pausedState = true;
	var progressSlideTimerFunction = progressSlide;
	var slideTimer = null;

	getSlides();
	progressSlide();

	this.pause = pauseF;
	this.pickSlide = pickSlideF;

	function pickSlideF(thing)
	{
		clearTimeout(slideTimer);
		pausedState = true;
		document.getElementById("btn_play").innerHTML = "<img style='display:inline;margin-top:0px' src='/Homepage/images/btn_pause.gif'>";
		if(displayedSlide)
			displayedSlide.hideSlide();
		document.getElementById(displayedSlide.getSlideEvar6()).style.color = "#666666";
		document.getElementById(displayedSlide.getSlideEvar6()).style.background = "url(/Homepage/images/btn_promo.gif) no-repeat top center";
		focusSlide = displayedSlide;
		while(focusSlide.nextSlide.getSlideEvar6() != thing)
			focusSlide = focusSlide.nextSlide;
		displayedSlide = focusSlide.nextSlide;
		displayedSlide.showSlide();
		document.getElementById(displayedSlide.getSlideEvar6()).style.color = "#ffffff";
		document.getElementById(displayedSlide.getSlideEvar6()).style.background = "url(/Homepage/images/btn_promo_over.gif) no-repeat top center";
}
	function pauseF(instruction)
	{
		if(instruction == true || !pausedState)
		{
			clearTimeout(slideTimer);
			pausedState = true;
			document.getElementById("btn_play").innerHTML = "<img style='display:inline;margin-top:0px' src='/Homepage/images/btn_pause.gif'>";
			displayedSlide.showSlide();
		}
		else if(instruction == false || pausedState)
		{
				document.getElementById("btn_play").innerHTML = "<img style='display:inline;margin-top:0px' src='/Homepage/images/btn_play.gif'>";
			progressSlide()
		}
	}
	function getSlides()
	{
		document.body.childNodes ? childs = "childNodes" : childs = "children";
		eval("var banners = document.getElementById('banner_matte')." + childs);
		var buttonsTemp = "";
		for (elemLoop = 0, numElements = 1; elemLoop < banners.length; elemLoop++) 
			if(banners.item(elemLoop).id && banners.item(elemLoop).id.indexOf("aSlide") == 0)
			{
				numberOfSlides++;
				bannerID = banners.item(elemLoop).id.substring(banners.item(elemLoop).id.indexOf(":") + 1, banners.item(elemLoop).id.indexOf("@"));
				buttonsTemp += "<a id='" + bannerID + "' onclick='theSlideshow.pickSlide(this.id);' href='javascript:trackBannerSelection(\"" + bannerID + "\");'>" + numberOfSlides + "</a>";
				addSlide(banners.item(elemLoop));
			}
			document.getElementById("banner_btns").innerHTML = buttonsTemp + "<a href='javascript:theSlideshow.pause();' id='btn_play' style=\"background:none;\"><img style='display:inline;margin-top:0px;' src='/Homepage/images/btn_play.gif'></a>";
			focusSlide = slides;
			while(focusSlide.nextSlide)
				focusSlide = focusSlide.nextSlide;
			focusSlide.nextSlide = slides;
	}
	function addSlide(aSlide)
	{
		newSlide = new SlideClass(aSlide);
		if(slides == null)
		{
			slides = newSlide;
			newSlide.showSlide();
		}
		else
		{
			focusSlide = slides;
			while(focusSlide.nextSlide)
				focusSlide = focusSlide.nextSlide;
			focusSlide.nextSlide = newSlide;
			newSlide.hideSlide();
		}
	}
	function SlideClass(slide)
	{
		var theSlide = slide;
		var evar6 = theSlide.id.substring(theSlide.id.indexOf(":") + 1, theSlide.id.indexOf("@"));
		var delay = 1000 * theSlide.id.substring(theSlide.id.indexOf("@") + 1);
		var nextSlide = null;
		var fadeIndex = null;
		var fadeSlideInTimerFunction = fadeSlideInF;
		var fadeSlideOutTimerFunction = fadeSlideOutF;
		var fadeTimer = null;
		var fadeDelay = 30;
		var fadeStep = 5;

		this.showSlide = showSlideF;
		this.hideSlide = hideSlideF;
		this.getDelay = getDelayF;
		this.setOpacity = setOpacityF;
		this.fadeSlideIn = fadeSlideInF;
		this.fadeSlideOut = fadeSlideOutF;
		this.getSlideEvar6 = getSlideEvar6F;

		function setOpacityF(percent)
		{
			theSlide.style.opacity = percent/100;
			theSlide.style.filter = 'alpha(opacity=' + percent + ')';
			fadeIndex = percent;
		}
		function showSlideF()
		{
			theSlide.style.display = "block";
			setOpacityF(100);
			fadeIndex = 100;
		}
		function hideSlideF()
		{
			theSlide.style.display = "none";
			setOpacityF(0);
			fadeIndex = 0;
		}
		function getDelayF()
		{
			return delay;
		}
		function fadeSlideInF()
		{
			setOpacityF(fadeIndex + fadeStep);
			theSlide.style.display = "block";
			if(fadeIndex < 100)
				fadeTimer = window.setTimeout(fadeSlideInTimerFunction, fadeDelay);
		}
		function fadeSlideOutF()
		{
			setOpacityF(fadeIndex - fadeStep);
			if(fadeIndex < 1)
			{
				hideSlideF();
			}
			if(fadeIndex > 0)
			{
				fadeTimer = window.setTimeout(fadeSlideOutTimerFunction, fadeDelay);
			}
		}
		function getSlideEvar6F()
		{
			return evar6;
		}
	}
	function progressSlide()
	{
		if(displayedSlide)
		{
			displayedSlide.fadeSlideOut();
			document.getElementById(displayedSlide.getSlideEvar6()).style.color = "#666666";
			document.getElementById(displayedSlide.getSlideEvar6()).style.background = "url(/Homepage/images/btn_promo.gif) no-repeat top center";
			displayedSlide = displayedSlide.nextSlide;
			displayedSlide.fadeSlideIn();
			document.getElementById(displayedSlide.getSlideEvar6()).style.color = "#ffffff";
			document.getElementById(displayedSlide.getSlideEvar6()).style.background = "url(/Homepage/images/btn_promo_over.gif) no-repeat top center";
			slideTimer = window.setTimeout(progressSlideTimerFunction, displayedSlide.getDelay());
			pausedState = false;
		}
		else
		{
			displayedSlide = slides;
			displayedSlide.fadeSlideIn();
			document.getElementById(displayedSlide.getSlideEvar6()).style.color = "#ffffff";
			document.getElementById(displayedSlide.getSlideEvar6()).style.background = "url(/Homepage/images/btn_promo_over.gif) no-repeat top center";
			slideTimer = window.setTimeout(progressSlideTimerFunction, displayedSlide.getDelay());
			pausedState = false;
		}
	}
}
function initRotation(rotationContainer)
{
	theSlideshow = new SlideshowClass(rotationContainer);
}
function trackBannerSelection(linkName)
{
	var s=s_gi(s_account);
	s.templtv=s.linkTrackVars;
	s.templte=s.linkTrackEvents;
	s.linkTrackVars='eVar6';
	s.eVar6=linkName;
	s.tl(this,'o',linkName);
	if(s.templtv)s.linkTrackVars=s.templtv;
	if(s.templte)s.linkTrackEvents=s.templte;
}
