
var ImageFade = {
	
	imageContainer : null
	,
	imagesAry : null
	,
	activeImage : null
	,
	nextImage : null
	,
	doFadeOut : true
	,
	/**
	* init
	*
	* @return	void
	*/
	init: function(evt) {
		ImageFade.imageContainer = $('SwitchImageContainer');
		ImageFade.imagesAry = ImageFade.imageContainer.getElementsBySelector('img');
		
		if($("letImageStay")){
			ImageFade.letImageStay = parseInt($("letImageStay").value);
			ImageFade.letImageStay += 1000;
		}
		if($("doFadeOut")){
			if($("doFadeOut").value == 0){
				ImageFade.doFadeOut = false;
			}
		}
		
		if(ImageFade.doFadeOut === false){
			ImageFade.justFadeIn();
		}else{
			ImageFade.fadeInAndFadeOut();
		}
			
		
	},
	
	justFadeIn: function(){
		ImageFade.activeImage = ImageFade.imagesAry[0];
		ImageFade.nextImage = Element.nextSiblings(ImageFade.activeImage)[0];
		/* Erste Bild auf Block setzen **/
		ImageFade.imagesAry[0].style.display = "block";
		window.setInterval("ImageFade.doFadeIn()", ImageFade.letImageStay);
	},
	
	fadeInAndFadeOut: function(){
		ImageFade.activeImage = ImageFade.imagesAry[0];
		ImageFade.nextImage = Element.nextSiblings(ImageFade.activeImage)[0];
		/* Erste Bild auf Block setzen **/
		ImageFade.imagesAry[0].style.display = "block";
		window.setInterval("ImageFade.doFadeIn()", ImageFade.letImageStay);
		window.setInterval("ImageFade.doFadeOut()", ImageFade.letImageStay);
	},
	
	doFadeIn: function(){
		Effect.Appear(ImageFade.nextImage, { 
				duration:2.0
				,afterFinish: function() { ImageFade.moveActiveImageToLastPosition(); }  
			}
		);		
	},
	
	doFadeOut: function(){
		Effect.Fade(ImageFade.activeImage, { 
				duration:2.0
			}
		);		
	},
	
	moveActiveImageToLastPosition: function(){
		ImageFade.nextImage.style.display="block";
		var movingElement = Element.remove(ImageFade.activeImage);
		movingElement.style.display="none";
		ImageFade.imageContainer.insert({bottom:movingElement});
		
		var tmp = Element.nextSiblings(ImageFade.nextImage)[0];
		ImageFade.activeImage = ImageFade.nextImage;
		ImageFade.nextImage = tmp;
		
		
		
	}
	
}
/**
* Call the initPager function when document has been loaded
*/
Event.observe(window, 'load', ImageFade.init);
