/*
 * fader object
 * (c) 2008 macrocom GmbH
 * v0.1 28.08.2008 nhe
 * 
 * this is a modified quick and dirty version to support only two fading images
 */

if (!jQuery)
	alert('jQuery is needed for this page to work properly');

var fader={
	currentImg: 0,
	fadeDuration: 3500,
	fadeTimeout: 1500,
	imgArr: Array(),
	startZIndex: 12,
	started: false,
	fadeDeactivated: false,
	
	init: function(duration, timeout) {
		this.fadeDuration=duration;
		this.fadeTimeout=timeout;
		this.imgArr=$("div[class^='slideshow']");
		//console.log('total length: ', this.imgArr.length);
	},
	
	start: function() {
		if (!this.started) {
			this.started=true;
			window.setTimeout('fader.fade()', this.fadeTimeout);
		}
	},
	
	stop: function() {
		this.started=false;
	},
	
	getAct: function() {
		var ret=false;
		ret=$(this.imgArr[this.currentImg]);
		//console.log('getAct::', ret);
		return ret;
	},
	
	getNext: function() {
		var ret=false;

		// reset display to block
		for (var i=0; i<this.imgArr.length; i++)
			if (i!=this.currentImg-1)
				$(this.imgArr[i]).css('display', 'block');

		// renumber z-index
		if (this.currentImg + 1 >= this.imgArr.length) {
			for (var i=0; i<this.imgArr.length; i++)
				$(this.imgArr[i]).css('z-index', 10+i);

			ret = $(this.imgArr[0]);
		}
		else 
			ret = $(this.imgArr[this.currentImg + 1]);
			
		//console.log('getNext::', ret);
		return ret;
	},
	
	getPrev: function() {
		var ret=false;
		if (this.currentImg-1<0)
			ret=$(this.imgArr[this.imgArr.length-1]);
		else
			ret=$(this.imgArr[this.currentImg-1]);

		//console.log('getPrev::', ret);
		return ret;
	},
	
	swapZIndex: function() {
		return;
		var tmp=this.getAct().css('z-index');
		this.getAct().css('z-index', this.getPrev().css('z-index'));
		this.getPrev().css('z-index', tmp);
	},
	
	deactivateFadeIE6: function() {
		this.fadeDeactivated=true;
	},
	
	fade: function() {
		if (!this.started)
			return;
			
		if (this.currentImg==0) {
			var first=this.imgArr[0];
			var second=this.imgArr[1];
			var third=this.imgArr[2];
			var fourth=this.imgArr[3];
			
			if (!this.fadeDeactivated) {
				$(first).fadeOut(this.fadeDuration);
				$(second).fadeIn(this.fadeDuration);
				$(third).fadeOut(this.fadeDuration);
				$(fourth).fadeOut(this.fadeDuration);
			}
			else {
				// IE6 workaround
				$(first).css('display', 'none');
				$(second).css('display', 'block');
				$(third).css('display', 'none');
				$(fourth).css('display', 'none');
			}
		}if (this.currentImg==1) {
			var first=this.imgArr[0];
			var second=this.imgArr[1];
			var third=this.imgArr[2];
			var fourth=this.imgArr[3];
			
			if (!this.fadeDeactivated) {
				$(first).fadeOut(this.fadeDuration);
				$(second).fadeOut(this.fadeDuration);
				$(third).fadeIn(this.fadeDuration);
				$(fourth).fadeOut(this.fadeDuration);
			}
			else {
				// IE6 workaround
				$(first).css('display', 'none');
				$(third).css('display', 'block');
				$(second).css('display', 'none');
				$(fourth).css('display', 'none');
			}
		}if (this.currentImg==2) {
			var first=this.imgArr[0];
			var second=this.imgArr[1];
			var third=this.imgArr[2];
			var fourth=this.imgArr[3];
			
			if (!this.fadeDeactivated) {
				$(first).fadeOut(this.fadeDuration);
				$(second).fadeOut(this.fadeDuration);
				$(third).fadeOut(this.fadeDuration);
				$(fourth).fadeIn(this.fadeDuration);
			}
			else {
				// IE6 workaround
				$(first).css('display', 'none');
				$(fourth).css('display', 'block');
				$(second).css('display', 'none');
				$(third).css('display', 'none');
			}
		}if (this.currentImg==3) {
			var first=this.imgArr[0];
			var second=this.imgArr[1];
			var third=this.imgArr[2];
			var fourth=this.imgArr[3];
			
			if (!this.fadeDeactivated) {
				$(first).fadeIn(this.fadeDuration);
				$(second).fadeOut(this.fadeDuration);
				$(third).fadeOut(this.fadeDuration);
				$(fourth).fadeOut(this.fadeDuration);
			}
			else {
				// IE6 workaround
				$(fourth).css('display', 'none');
				$(first).css('display', 'block');
				$(second).css('display', 'none');
				$(third).css('display', 'none');
			}
		}
				this.currentImg++;
		if (this.currentImg>=4)
			this.currentImg=0;

		
		window.setTimeout('fader.fade()', this.fadeTimeout);
	}
};

/*


else {
			
			var first=this.imgArr[0];
			var second=this.imgArr[1];
			var third=this.imgArr[2];
			var fourth=this.imgArr[3];
			
			if (!this.fadeDeactivated) {
				$(second).fadeOut(this.fadeDuration);
				$(first).fadeIn(this.fadeDuration);
				$(third).fadeOut(this.fadeDuration);
				$(fourth).fadeOut(this.fadeDuration);
			}
			else {
				// IE6 workaround
				$(first).css('display', 'block');
				$(second).css('display', 'none');
				$(third).css('display', 'none');
				$(fourth).css('display', 'none');
			}
		}



		if (this.currentImg==1) {
			var first=this.imgArr[0];
			var second=this.imgArr[1];
			var third=this.imgArr[2];
			var fourth=this.imgArr[3];
			
			if (!this.fadeDeactivated) {
				$(first).fadeOut(this.fadeDuration);
				$(second).fadeOut(this.fadeDuration);
				$(third).fadeIn(this.fadeDuration);
				$(fourth).fadeOut(this.fadeDuration);
			}
			else {
				// IE6 workaround
				$(first).css('display', 'none');
				$(third).css('display', 'block');
				$(second).css('display', 'none');
				$(fourth).css('display', 'none');
			}
		}	
		if (this.currentImg==2) {
			var first=this.imgArr[0];
			var second=this.imgArr[1];
			var third=this.imgArr[2];
			var fourth=this.imgArr[3];
			
			if (!this.fadeDeactivated) {
				$(first).fadeOut(this.fadeDuration);
				$(second).fadeOut(this.fadeDuration);
				$(third).fadeOut(this.fadeDuration);
				$(fourth).fadeIn(this.fadeDuration);
			}
			else {
				// IE6 workaround
				$(first).css('display', 'none');
				$(fourth).css('display', 'block');
				$(second).css('display', 'none');
				$(third).css('display', 'none');
			}
		}
		
*/
