// JavaScript Document

window.onresize=rez;
window.onload=loaded;

var count = 0;

function loaded(){	
	var LIs1 = new Array();
	var LIs2 = new Array();
	
	var sliderData1 = new Array();
	sliderData1["ID"] = "slider1";
	sliderData1["LIs"] = new Array();
	
	sliderData1["slideIn"] = true; 		// slideIn Effekt true/false
	sliderData1["slideInDauer"] = 8; 	// Dauer der slide Animation in Sekunden
	
	sliderData1["slideOut"] = true;  	// slideOut Effekt true/false
	sliderData1["slideOutDauer"] = 8; 	// Dauer der slide Animation in Sekunden
	
	sliderData1["fadeIn"] = true;			// fadeIn Effekt true/false
	sliderData1["fadeInDauer"] = 5; 		// Dauer der fade Animation in Sekunden
	
	sliderData1["fadeOut"] = true;		// fadeIn Effekt true/false
	sliderData1["fadeOutDauer"] = 5; 	// Dauer der fade Animation in Sekunden
	
	sliderData1["start"] = 0				// Pause vor 1. mal 
	sliderData1["pause"] = 20;				// Pause in Sekunden
	
	
	var sliderData2 = new Array();
	sliderData2["ID"] = "slider2";
	sliderData2["LIs"] = new Array();
	
	sliderData2["slideIn"] = true; 		// slideIn Effekt true/false
	sliderData2["slideInDauer"] = 8; 	// Dauer der slide Animation in Sekunden
	
	sliderData2["slideOut"] = true; 	 	// slideOut Effekt true/false
	sliderData2["slideOutDauer"] = 8; 	// Dauer der slide Animation in Sekunden
	
	sliderData2["fadeIn"] = true;			// fadeIn Effekt true/false
	sliderData2["fadeInDauer"] = 5; 		// Dauer der fade Animation in Sekunden
	
	sliderData2["fadeOut"] = true;		// fadeIn Effekt true/false
	sliderData2["fadeOutDauer"] = 5; 	// Dauer der fade Animation in Sekunden
	
	sliderData2["start"] = 15;				// Pause vor 1. mal 	
	sliderData2["pause"] = 20;				// Pause in Sekunden
	
	slider(sliderData1);
	slider(sliderData2);
	rez();
}

function slider(data){
	var container = document.getElementById(data.ID);
	if(container){
		var LIs = data["LIs"];
		
		// im element mit Id data["ID"] nach <li> suchen und in array speichern
		for(elem in container.childNodes){
			if(container.childNodes[elem].tagName=="UL"){
				for(elem2 in container.childNodes[elem].childNodes){
					if(container.childNodes[elem].childNodes[elem2].tagName=="LI"){
						LIs[LIs.length]=container.childNodes[elem].childNodes[elem2];
					}
				}
			}
		}
		
		var maxheight=0;
		// <li>s für Animation vorbereiten 
		if(LIs.length>1){
			for(elem in LIs){
				maxheight=LIs[elem].offsetHeight>maxheight?LIs[elem].offsetHeight:maxheight;
				LIs[elem].style.display="none";
				LIs[elem].style.position="absolute";
				LIs[elem].style.filter="Alpha(opacity:100)";
				LIs[elem].style.width="225px"
				LIs[elem].style.left="150px";
			}
			LIs[elem].parentNode.style.height=maxheight+10 + "px";	
		
			s1max=LIs.length;
			data["LIs"] = LIs;
			animate(data, null, 0); // Animation starten
		}
	}
}

function animate(data, oldind, newind){
	var LIs = data["LIs"];
	var newli=LIs[newind];
	var oldli=LIs[oldind];
	
	if(oldli){ // slide/fade out Animationen
		oldli.style.display="";
		if(data["fadeOut"]){
			opacTweenOut = new OpacityTween(oldli,Tween.strongEaseOut, 100, 0, data["fadeOutDauer"] || 2);
			opacTweenOut.start();
		}	
		if(data["slideOut"]){
			tweenOut = new Tween(oldli.style,'left',Tween.strongEaseOut,24,-250,data["slideOutDauer"] || 3,'px');
			tweenOut.start();
		}
	}
	
	// slide/fade in Animationen
	tweenIn = new Tween(newli.style,'left',Tween.strongEaseOut,(data["slideIn"]?250:24),24,data["slideInDauer"] || 3,'px');
	tweenIn.start();
	if(data["fadeIn"]){
		opacTweenIn = new OpacityTween(newli,Tween.strongEaseOut, 0, 100, data["fadeInDauer"] || 1);
		opacTweenIn.start();
	}
	
	tweenIn.onMotionChanged = function(){
		w = 265-newli.style.left.split("px")[0];
		newli.style.clip="rect(0 " + w + "px auto 0)";
		newli.style.display="";
	}
	tweenIn.onMotionFinished = function(){
		if(oldli){
			oldli.style.display="none";
			oldli.style.filter="Alpha(opacity:100)";
		}
		
		dummy = new Object;
		dummy.t = 0;
		timeout = new Tween(dummy,t,Tween.strongEaseOut, 0, 100, (data["pause"]+data["start"]) || 5);
		data["start"] = 0;
		timeout.start();
		timeout.onMotionFinished=function(){
			animate(data,newind,newind+1<LIs.length?newind+1:0);
		}
	}
}


function isIE6(){
	var browser=navigator.appName;
	if (browser.indexOf("Microsoft") < 0) return false;	
	var b_version=navigator.appVersion;
	var version=parseFloat(b_version);
    if (version <= 6){
        return true;
    }	
	return false;
}

function rez(){
    //if (isIE6()) return;
    
	var men=document.getElementById('men2');
	var c=document.getElementById('cont');
	var m=document.getElementById('main');
	var l=document.getElementById('left');
	var r=document.getElementById('right');
	var f=document.getElementById('foot');
	
	str =  "cont: " + c.offsetHeight + " ";
	str += "main: " + m.offsetHeight + " ";
	str += "left: " + l.offsetHeight + " ";
	str += "right: " + r.offsetHeight + " ";
	str += "foot: " + f.offsetHeight + " ";
	str += "men2: " + men.offsetHeight + " ";
	ftop = c.offsetHeight - f.offsetHeight;
	str += "men2top (cont-foot-men2): " + ftop;
	
	f.style.position="absolute";
	f.style.height=f.offsetHeight + "px";
	
	col = "";

	if(l.offsetHeight+men.offsetHeight > r.offsetHeight){
		if(ftop <= l.offsetHeight){
			str += ' links';
			f.style.top=l.offsetHeight +"px";
			col="men";
		}
	} else {
		if(c.offsetHeight-(f.offsetHeight-men.offsetHeight) <= r.offsetHeight){
			str += ' rechs';
			f.style.top=r.offsetHeight-men.offsetHeight+"px";
			col="main";
		}
	}

	if(col=="main"){
		f.style.top=r.offsetHeight-men.offsetHeight+"px";
	}else if(col=="men"){
		f.style.top=(l.offsetHeight+20)+"px"; /*20 is exp. correction factor*/ 
	}else if(col==""){
		f.style.top="";
	}
	
	
	
	//document.title=" top: " + f.style.top  + " " + str;
	//alert(str);
}