/*****
Image Cross Fade Redux
Version 1.0
Last revision: 02.15.2006
steve@slayeroffice.com
Please leave this notice intact. 
Rewrite of old code found here: http://slayeroffice.com/code/imageCrossFade/index.html
modifiziert von Franziska Maelzer: http://die.netzspielwiese.de/blog/javascript-dom/2006-06/dom-scripting-slideshow
modifiziert von Marco Grueger: http://www.blickpunkt-sh.de
*****/
window.addEventListener?window.addEventListener("load",so_init,false):window.attachEvent("onload",so_init);
var d=document;
var bilder = new Array();
var zInterval = null;
var aktuell=0;
var pause=false; 
var bilderAnzahl=bilderListe.length; 
var geschwindigkeit=3000;

function so_init()
{
	if(!d.getElementById || !d.createElement)return;	
	// erstes Bild wird eingelesen
	bild = d.getElementById("slideshow").getElementsByTagName("img");
	bilder[0] = bild[0];
	bilder[0].style.display = "block";
	bilder[0].xOpacity = .99;
	bilder[1] = new Image();
	bilder[1].src = bilderListe[1];
	bilder[1].xOpacity = 0;
	d.getElementById("slideshow").appendChild(bilder[1]);
	setTimeout(so_xfade,geschwindigkeit);
	neuesBild();
}

function so_xfade()
{
	cOpacity = bilder[aktuell].xOpacity;
	nIndex = bilder[aktuell+1]?aktuell+1:0;
	nOpacity = bilder[nIndex].xOpacity;
	cOpacity-=.01; 
	nOpacity+=.01;
	bilder[nIndex].style.display = "block";
	bilder[aktuell].xOpacity = cOpacity;
	bilder[nIndex].xOpacity = nOpacity;
	setOpacity(bilder[aktuell]); 
	setOpacity(bilder[nIndex]);
	if(cOpacity<=0)
	{
		bilder[aktuell].style.display = "none";
		aktuell = nIndex;
		setTimeout(so_xfade,geschwindigkeit);
		neuesBild();
	}
	else {
		setTimeout(so_xfade,50);
	}
	
	function setOpacity(obj)
	{
		if(obj.xOpacity>.99)
		{
			obj.xOpacity = .99;
			return;
		}
		obj.style.opacity = obj.xOpacity;
		obj.style.MozOpacity = obj.xOpacity;
		obj.style.filter = "alpha(opacity=" + (obj.xOpacity*100) + ")";
	}
}

function neuesBild()
{
	// immer ein Bild vorausladen
	if ( (aktuell < (bilderAnzahl-2)) && (bilder.length < bilderAnzahl) )
	{
		bilder[aktuell+2] = new Image();
		bilder[aktuell+2].src =  bilderListe[aktuell+2]; 
		bilder[aktuell+2].xOpacity = 0;
		bilder[aktuell+2].alt = bilderListe[aktuell+2];
		d.getElementById("slideshow").appendChild(bilder[aktuell+2]);
	}
}
