/*****

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


*****/


window.addEventListener?window.addEventListener("load",so_init,false):window.attachEvent("onload",so_init);

var d=document, hu_imgs = new Array(), zInterval = null, hu_current=0, pause=false,ind = 0,help = 0,intflag = 0;


function so_init() {
	help=0;
	if(!d.getElementById || !d.createElement)return;

	if (navigator.cookieEnabled){
		hu_current = parseInt(getCookie('scur'));

		if(hu_current == "" || isNaN(hu_current)){
			setCookie("scur","0");
			hu_current=0;
		}

	}

	hu_imgs = d.getElementById("hu-imageContainer").getElementsByTagName("img");
	for(i=1;i<hu_imgs.length;i++) hu_imgs[i].xOpacity = 0;
	hu_imgs[hu_current].style.display = "block";
	hu_imgs[hu_current].xOpacity = .99;
	inText = d.getElementById('imageTextInner');
	inText.innerHTML = hu_imgs[hu_current].alt;
	setTimeout(so_xfade,3000);
}

function so_xfade() {

	if(intflag!=1){

		cOpacity = hu_imgs[hu_current].xOpacity;
		nIndex = hu_imgs[hu_current+1]?hu_current+1:0;

		nOpacity = hu_imgs[nIndex].xOpacity;
		if(isNaN(nOpacity))nOpacity = 0;
		cOpacity-=.05;
		nOpacity+=.05;

		hu_imgs[nIndex].style.display = "block";
		hu_imgs[hu_current].xOpacity = cOpacity;
		hu_imgs[nIndex].xOpacity = nOpacity;

		setOpacity(hu_imgs[hu_current]);
		setOpacity(hu_imgs[nIndex]);

		if(cOpacity<=0.6 && help==0){
			setCookie("scur",nIndex);
			//alert('cookie set to: '+nIndex);
			inText = d.getElementById('imageTextInner');
			inText.innerHTML = hu_imgs[nIndex].alt;
			help=1;
		}

		if(cOpacity<=0) {
			hu_imgs[hu_current].style.display = "none";
			hu_current = nIndex
			help=0;
			setTimeout(so_xfade,7000);

		} 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 showThumb(tid){
	intflag = 1;
	for(i=1;i<hu_imgs.length;i++) hu_imgs[i].style.display = "none";
	//hu_imgs[hu_current].style.display = "none";
	hu_imgs[tid].style.display= "block";

	inText = d.getElementById('imageTextInner');
	inText.innerHTML = hu_imgs[tid].alt;

	hu_imgs[hu_current].xOpacity = 0;
	hu_imgs[tid].xOpacity = 0.99;

	setOpacity(hu_imgs[hu_current]);
	setOpacity(hu_imgs[tid]);

	setCookie("scur",tid);

	help=0;



}

function setCookie(name,value){
	document.cookie = name+"="+value+"; path=/";
}

function getCookie(name) {
	var keks = document.cookie;

	// Anfangsposition des Name=Wert-Paars suchen
	var posName = keks.indexOf("; " + name + "=");
	if (posName == -1) {
		// vielleicht war's der erste Name in der Liste?
		if (keks.indexOf(name + "=") == 0) posName = 0;
		// nein? dann abbrechen mit Rückgabewert null
		else return null;
	}

	// Anfangs- und Endposition des Krümelwerts suchen
	var wertAnfang = keks.indexOf("=", posName)+1;
	var wertEnde = keks.indexOf(";", posName+1);
	if (wertEnde == -1) wertEnde = keks.length;

	// Krümelwert auslesen und zurückgeben
	var wert = keks.substring(wertAnfang, wertEnde);
	return unescape(wert);
}
