// VERSION 1.2 - IE und FF Compatible
// (C) Bernhard Reiter - KUSE.DE WERBEAGENTUR GbR

	var goSliderMenuSlideIn = false;
	var goSliderMenuSlideOut = false;
	
	// Function Slidermenu
	// tcNavID = ID des ersten UL des Menus
	// tnTextHeight = LI Hoehe der Submenus
	// tbNoBlankLink = Link des top elements nicht mit # ersetzen
	// tbSpeedStep = Schrittweite beim Sliden
	// tbSpeed = Sliderspeed
	function SliderMenu_Init(tcNavID,tnTextHeight,tbNoBlankLink,tbSpeedStep,tbSpeed,tcSlideElement)
	{
	
		lbNoSlide = false;
		if(!tbSpeed)
			tbSpeed = 10;
		
		if(!tbSpeedStep)
			tbSpeedStep = 2;
		
		if(!gcOpenSite == "")
		{
			tcSlideElement=gcOpenSite;
			gcOpenSite = "";
			lbNoSlide = true;
		}
	
		loMenu = false;
		lbID = false;
		lnTextHeight = tnTextHeight;
		
			// Abhandlung ID hat vorrang
			if(document.getElementById(tcNavID))
			{
				loMenu = document.getElementById(tcNavID);
				lbID = true;
			}
			
			// Wenn ID nich gefunden schauen obs einen Name hat
			if(!loMenu)
			{
				if(getElementsByName(tcNavID))
				{
					loMenu = getElementsByName(tcNavID)[0];
				}
			}
	
			// Ansonsten erstmals Error ausgeben
			if(!loMenu)
			{
				alert("Menu ID / Name " + tcNavID + " nicht gefunden");
			}
			
			// First Step - Alle Li's auslesen
			loMainMenu = loMenu.getElementsByTagName("li");
			
			for(lnCount=0;lnCount<loMainMenu.length;lnCount++)
			{
				if(lbID)
					lcParent = loMainMenu[lnCount].parentNode.id;
				else
					lcParent = loMainMenu[lnCount].parentNode.name;
				
				
				if(lcParent == tcNavID)
				{
					if(loMainMenu[lnCount].getElementsByTagName("ul").length > 0)
					{

						loLinks = loMainMenu[lnCount].getElementsByTagName("a");
						for(i=0;i<loLinks.length;loLinks++)
						{							
							lnBoxHeight = loMainMenu[lnCount].getElementsByTagName("li").length * lnTextHeight;
							loMainUL = loMainMenu[lnCount].getElementsByTagName("ul")[0];
							loMainUL.style.height = lnBoxHeight +"px";
							
							// Determine Submenu Count
							if(loLinks[i].innerHTML == tcSlideElement)
							{
								if(!loMainUL.style.display  || loMainUL.style.display=="none")
								{
								goSliderMenuSlideIn = loMainUL;
								loMainUL.style.height = "0px";
								loMainUL.style.display="block";
								
								if(!lbNoSlide)
									window.setTimeout("SliderMenuIn(0,"+ lnBoxHeight +",0," + tbSpeed + "," + tbSpeedStep +")", tbSpeed );
								else
									loMainUL.style.height = lnBoxHeight + "px";
								}
							}
							else
							{
								if(loMainUL.style.display=="block")
								{
								goSliderMenuSlideOut = loMainUL;
								loMainUL.style.height = lnBoxHeight + "px";
								loMainUL.style.display="block";
								
								if(!lbNoSlide)
								{
									window.setTimeout("SliderMenuOut("+ lnBoxHeight +",0," + tbSpeed + "," + tbSpeedStep +")", tbSpeed );
								}
								else
								{
								loMainUL.style.height="0px";
								loMainUL.style.display="none";	
								}
								}
							}
							
							if(!tbNoBlankLink)
								loLinks[i].href = "#";
							
							
							
							   loLinks[i].setAttribute('onclick', "SliderMenu_Init('" + tcNavID+ "'," + tnTextHeight + "," + tbNoBlankLink + "," + tbSpeedStep+ "," + tbSpeed + ",'" + loLinks[i].innerHTML + "');");
								if ((document.all)&&(document.getElementById))
								{
									loaLink = loLinks[i];
									loaLink["onclick"]=new Function("SliderMenu_Init('" + tcNavID+ "'," + tnTextHeight + "," + tbNoBlankLink + "," + tbSpeedStep+ "," + tbSpeed + ",'" + loLinks[i].innerHTML + "');");
								}
							
							
						}
						

					}
				}			
			}
	}

	
	function SliderMenuIn(tnStart,tnEnd,tnSpeed,tnStep)
	{
	
		goEle = goSliderMenuSlideIn;
		if(goEle)
		{
			goEle.style.height = tnStart + "px";
			tnStart = tnStart + tnStep;
			
			if(tnStart<=tnEnd)
			{
					window.setTimeout("SliderMenuIn(" + tnStart +","+ tnEnd +","+ tnSpeed +","+ tnStep +")", tnSpeed);
			}
			else
			{
				goEle.style.height = tnEnd + "px";
			}
		
		}
	
	}
	
	function SliderMenuOut(tnStart,tnEnd,tnSpeed,tnStep)
	{
	
		goEle = goSliderMenuSlideOut;
		if(goEle)
		{
			goEle.style.height = tnStart + "px";
			tnStart = tnStart - tnStep;
			
			if(tnStart>=tnEnd)
			{
					window.setTimeout("SliderMenuOut(" + tnStart +","+ tnEnd +","+ tnSpeed +","+ tnStep +")", tnSpeed);
			}
			else
			{
				goSliderMenuSlideOut.style.height = "0px";
				goSliderMenuSlideOut.style.display = "none";
			}
		
		}
	
	}
