// maximale Auf-/Zuklappzeit = slideSteps*timerSteps
var slideSteps = 4;	//px steps to maxHeight
var timerSteps = 10;	//time in ms per slidestep

var dataContainer = new Array();
var curSlide=new Array();
var curSlideOff=new Array();

function slideMe(obj)
{
	if(obj)	//check ob aktiv
	{
		var found=false;
		for (var i=0;i<curSlide.length;i++)
		{
			if(curSlide[i]==obj)
			{
				found=true;
				break;
			}
		}
		if (!found)
			curSlide.push(obj);
	}
	for (var i=0;i<curSlide.length;i++)
	{
		var now_height = 0;
	    if(curSlide[i].style.height)
	    	now_height = parseFloat(curSlide[i].style.height);
	    
    	// lte ie6  -> kein max/minHeight+Width
    	if(curSlide[i].style.maxHeight)
			cur_height = parseFloat(curSlide[i].style.maxHeight);
		else if(curSlide[i].getAttribute("scrollHeight",false))
			cur_height = parseFloat(curSlide[i].getAttribute("scrollHeight",false));
		
		new_height = now_height + (cur_height/slideSteps);
		
		if(new_height <= cur_height)
	    {
	      curSlide[i].style.height = new_height + "px";
		  window.setTimeout("slideMe()",timerSteps);
	    }
	    else
	    {
	    	// lte ie6  -> kein max/minHeight+Width
	    	if(curSlide[i].style.maxHeight)
				curSlide[i].style.height = curSlide[i].style.maxHeight;
			else if(curSlide[i].getAttribute("scrollHeight",false))
				curSlide[i].style.height = curSlide[i].getAttribute("scrollHeight",false);
	    	curSlide.remove(i);
	    }
	}
}
function slideMeOff(obj)
{
	if(obj)	//check ob aktiv
	{
		var found=false;
		for (var i=0;i<curSlideOff.length;i++)
		{
			if(curSlideOff[i]==obj)
			{
				found=true;
				break;
			}
		}
		if (!found)
			curSlideOff.push(obj);
	}
	for (var i=0;i<curSlideOff.length;i++)
	{
		var scrollHeight = 0;
    	// lte ie6  -> kein max/minHeight+Width
    	if(curSlideOff[i].style.maxHeight)
			scrollHeight = parseFloat(curSlideOff[i].style.maxHeight);
		else if(curSlideOff[i].getAttribute("scrollHeight",false))
			scrollHeight = parseFloat(curSlideOff[i].getAttribute("scrollHeight",false)); 
		
		var now_height = 0;
	    if(!curSlideOff[i].style.height)
	    	now_height = scrollHeight;
	    else
	    	now_height = parseFloat(curSlideOff[i].style.height);
		
		new_height = now_height - (scrollHeight/slideSteps);
		
	    if(new_height>=0)
	    {
	      curSlideOff[i].style.height = new_height + "px";
		  window.setTimeout("slideMeOff()",timerSteps);
	    }
	    else
	    {
	    	curSlideOff[i].style.height = "0px";
	    	curSlideOff.remove(i);
	    }	
	}
}

function getExtCssAttr(sel,atr)
{
	newbgImg=getStyle(sel,atr);
	var lnk=document.getElementsByTagName("link");
	for (var k=0;k<lnk.length;k++)
	{
		if(lnk[k].rel=="stylesheet" && lnk[k].href.search("style_projekte.css")!=-1)
		{
			anz=strCount(lnk[k].href,"/");
			
			for(a=0;a<anz;a++)
				newbgImg=newbgImg.replace("../","");
		}
	}
	return newbgImg;
}
function selectTab(obj)
{
	var myClick="";
	for(var i=0;i<obj.childNodes.length;i++)
		if(obj.childNodes[i].className && (obj.childNodes[i].className.search(/xb2hl/)!=-1))
			myClick=""+obj.childNodes[i].innerHTML;
	var pa=obj.parentNode;
	if(pa.className.search(/xboxcontent/)!=-1)
	{
		for(var i=0;i<pa.childNodes.length;i++)
		{
			if(pa.childNodes[i].className && (pa.childNodes[i].className.search(/xboxtext/)!=-1))
			{
				if(myClick != "")
				{
					var newbgImg = obj.style.backgroundImage;
					if(dataContainer[myClick]=='block')
					{
						setdataContainer(myClick,'none');
						slideMeOff(pa.childNodes[i]);			
						if(!newbgImg) //externes stylesheet?
							newbgImg=getExtCssAttr('xb2Cl','background-image');
						newbgImg=newbgImg.replace(/ON/,'OFF');
					}
					else
					{
						setdataContainer(myClick,'block');				
						slideMe(pa.childNodes[i]);
						if(!newbgImg) //externes stylesheet?
							newbgImg=getExtCssAttr('xb2Cl','background-image');
						newbgImg=newbgImg.replace(/OFF/,'ON');				
					}
					if(newbgImg)
						obj.style.backgroundImage = newbgImg.trim();
				}
			}
		}
	}
}
var divWalkSearch={};
divWalkSearch["xbox"]="xboxcontent";
divWalkSearch["xboxcontent"]="xb2Cl";
divWalkSearch["xb2Cl"]="xb2hl";
divWalkSearch["xb2hl"]="found";

function divWalk(obj,searchClass)
{
	for(var i=0;i<obj.childNodes.length;i++)
		if ( obj.childNodes[i].className && (obj.childNodes[i].className.search(searchClass)!=-1) && divWalkSearch[obj.childNodes[i].className]=="found")
		{
			for (var name in dataContainer) 
				if(name == obj.childNodes[i].innerHTML && dataContainer[name]=='none')
		 			selectTab(obj);	
		}else{
			if(obj.childNodes[i].className)
				divWalk(obj.childNodes[i],divWalkSearch[obj.childNodes[i].className]);
		}
}
function initmenu()
{
	var men=$('projmenu');
	for(var i=0;i<men.childNodes.length;i++)
		divWalk(men.childNodes[i],"xbox");
	//test
	//alert(getStyle("xb2t","max-height"));
}
function setdataContainer(nam,val)
{
	dataContainer[nam] = val;
	var nname="";
	var nvalue="";
	var str="";
	for (name in dataContainer) {
		val = dataContainer[name];
		if(val == 'block')
			if (str == "")
				str = "MENUS=" + name;
			else
				str += ";" + name;
	}
	//urls ändern mit get para
	var ahrefsanz=document.getElementsByTagName("a").length;
	for(var i=0;i<ahrefsanz;i++)
	{
		ahref=document.getElementsByTagName("a")[i];
		url=ahref.href;
		
		if(url.search(/index.php/)!=-1 && url.search(/projekte/)!=-1)
		{
			pos=url.search(/MENUS=/);
			if(pos!=-1)
				url=url.substr(0,pos);
			if(url.search(/\?/)!=-1)
				url+="&"+str;
			else
				url+="?"+str;
			url=url.replace('\?&','?');
			url=url.replace('&&','&');
			ahref.href=url;
		}
	}
}
onloadFkt["initmenu();"]="1";

