﻿
			var	d		= document,
				initCarousel	= setInterval("InitializeCarousel();",100),
				initAttemps	= 0,
				photos,
				isVertical		= true,
				timer		= 8000,
				speed		= 50,
				frames		= 10,
				FadeObj,
				fadeArray	= [362,-175,362],
				fadePos		= fadeArray[1],
				fadeIn,
				fadeOut,
				imgIndex		= 0;
			function InitializeCarousel() {
				initAttemps++;
				if( initAttemps < 50 )
					try {
						photos		= new Array();
						FadeObj		= d.getElement("CarouselFade");
						InsertPhoto(photos,d.getElement("CarouselImg_0"));
						InsertPhoto(photos,d.getElement("CarouselImg_1"));
						InsertPhoto(photos,d.getElement("CarouselImg_2"));
						InsertPhoto(photos,d.getElement("CarouselImg_3"));
						InsertPhoto(photos,d.getElement("CarouselImg_4"));

						setTimeout("StartFadeIn();",1000);
						initCarousel	= window.clearInterval(initCarousel);
					} catch (e) {}
				else {
					initCarousel	= window.clearInterval(initCarousel);
					alert("Initializing Carousel Failed");
				}
			}
			function StartFadeIn() {
				fadeIn				= setInterval("FadeIn();",speed);
				FadeObj.style.backgroundColor	= "transparent";
			}
			function FadeIn() {
				fadePos	+= (frames * (fadeArray[1] < fadeArray[2]?1:-1));
				fadePos	= (fadeArray[1] < fadeArray[2])?fadeArray[2] > fadePos?fadePos:fadeArray[2]:fadeArray[2] < fadePos?fadePos:fadeArray[2];
				FadeObj.style.backgroundPosition	= isVertical? "0px " + fadePos + "px" : fadePos + "px 0px";
				if(fadePos == fadeArray[2]) {
					fadeIn	= window.clearInterval(fadeIn);
					fadePos	= fadeArray[0];
					if(photos.length > 1) 
						setTimeout("StartFadeOut();",timer);
				}
			}
			function StartFadeOut() {
				fadeOut		= setInterval("FadeOut();",speed);
			}
			function FadeOut() {
				fadePos	+= (frames * (fadeArray[0] < fadeArray[1]?1:-1));
				fadePos	= (fadeArray[0] > fadeArray[1])?fadeArray[1] < fadePos?fadePos:fadeArray[1]:fadeArray[1] > fadePos?fadePos:fadeArray[1];
				FadeObj.style.backgroundPosition	= isVertical? "0px " + fadePos + "px" : fadePos + "px 0px";
				if(fadePos == fadeArray[1]) {
					fadeOut	= window.clearInterval(fadeOut);
					TogglePhoto(photos[imgIndex++],true);
					if(imgIndex >= photos.length)
						imgIndex = 0;
					TogglePhoto(photos[imgIndex],false);
					setTimeout("StartFadeIn();",10);
				}
			}
			function TogglePhoto(el,isOff) {
				el.className	= el.className.replace(/\bo(ff|n)/i,isOff?"Off":"On");
			}
			function InsertPhoto(arr,obj) {
				if(obj.style.backgroundImage != null && obj.style.backgroundImage != "" )
					arr.push(obj);
			}
			document.getElement	= function(elementId) {
				var	el	= this.getElementById(elementId);
				if(el == null)	throw "Not an Object";
				else		return el;
			}
