// JavaScript Document

//
// Diese Datei behandelt das ein- und ausblenden der Infofensterchen am rechten oberen Rand
//

//
//
// CONFIGURATION START
//
//

//Id des Items das alle "hält"
var item_cache = "icon_cache";

//Zeit, wie das Fenster pro Bewegung kleiner werden soll (Millisekunden)
var time_turn = 20;

//fängt beim ersten Item an
var item_start = 1;	

//Schrittweite also item 1 an item 5 aus
var item_schritt = 4;	

//Waartezeit bis zum nächsten Item
var time_waiting = 3000;	
//
//
// CONFIGURATION ENDE
//


//Funktionen
var rein = "";
var raus = "";

//Maximale Anzahl an Iconfelder holen uund zurückgeben
function get_max_icons_amount()
{
	var i = 1;
	var element = document.getElementById("icon_" + i);
	
	while(element)
	{
		i++;
		
		element = document.getElementById("icon_" + i);
	}
	return (i - 1);
}

//Funktion die ein neues Infofenster erstellt
function switch_icons()
{
	if(document.getElementById("icon_cache"))
	{
		//max items holen gehen
		var item_max = parseInt(get_max_icons_amount());
		
		//ausblend und Einblenditem festlegen
		var item_ausblend = parseInt(item_start);
		var item_einblend = (parseInt(item_start) + parseInt(item_schritt)) % item_max;
		
		//Abfrage für Item 0
		if(parseInt(item_einblend) == 0)
			item_einblend = item_max;
		
		raus = document.getElementById("icon_" + item_ausblend.toString());
		rein = document.getElementById("icon_" + item_einblend.toString());
	
		raus.ClassName = "infos";
		raus.style.paddingTop = "10px";
		raus.style.height = "40px";
		raus.style.paddingBottom = "10px";
	
		//einzublendene Icon auf 0 setztn und eiinblenden
		object_enable("icon_" + item_einblend.toString());
		
		rein.ClassName = "infos";
		rein.style.paddingTop = "0px";
		rein.style.height = "0px";
		rein.style.paddingBottom = "0px";
		
		//item ausblenden und einblenden lassen	
		icon_fade();
	}
}

//funktion die das eine 1px einfadet und das andere 1px einfadet
function icon_fade()
{
	//Wenn es beide Objekte gibt
	if(raus && rein)
	{
		//faden
		if(parseInt(raus.style.paddingBottom) > 0)
		{ 
			raus.style.paddingBottom = (parseInt(raus.style.paddingBottom) - 1) + "px";
			rein.style.paddingTop = (parseInt(rein.style.paddingTop) + 1) + "px";
			setTimeout("icon_fade()", time_turn);
		}
		else if(parseInt(raus.style.height) > 0)
		{
			raus.style.height = (parseInt(raus.style.height) - 1) + "px";
			rein.style.height = (parseInt(rein.style.height) + 1) + "px";
			setTimeout("icon_fade()", time_turn);
		}
		else if(parseInt(raus.style.paddingTop) > 0)
		{
			raus.style.paddingTop = (parseInt(raus.style.paddingTop) - 1) + "px";
			rein.style.paddingBottom = (parseInt(rein.style.paddingBottom) + 1) + "px";
			setTimeout("icon_fade()", time_turn);
		}
		else
		{
			if(document.getElementById(item_cache))
			{
				var divs = document.getElementById(item_cache).getElementsByTagName("div");
				temp = divs[0].cloneNode(true);
				
				temp.style.visibility = "hidden";
				temp.style.display = "none";
				document.getElementById(item_cache).appendChild(temp);
				
				temp = document.getElementById(item_cache).getElementsByTagName("div");
				document.getElementById(item_cache).removeChild(temp[0]);
				
				//startitem erhöhen
				item_start = (parseInt(item_start) + 1) % parseInt(get_max_icons_amount());
				
				if(parseInt(item_start) == 0)
					item_start = get_max_icons_amount();
					
				setTimeout("switch_icons()", time_waiting);
			}
		}
	}
}

