var imgSources = new Array();
var array = new Array();
imgSources['b'] = "gfx/ksi_bottomMenu.png";
imgSources['t'] = "gfx/ksi_topMenu.png";

function init(prefix){
	//Preload Images
	for (key in imgSources){
		var pic = new Image();
		pic.src = imgSources[key];
		array[key] = '<img class="pngfix" src="'+imgSources[key]+'" alt="menu graphics" />';
	}
	
	var i = 1;
	var element = null;
	while((element = getElement(prefix+i))!=null){
		getStyle(prefix+i).zIndex = 0;
		getElement(prefix+"State"+i).value = "OUT";
		i++;
	}
}

function changeStyle(prefix,clear,id,override){
	var curClassName = getElement(prefix+"bg"+id).className;
	
	if(clear && getElement(prefix+"State"+id).value == "OUT")
		getElement(prefix+"bg"+id).className = "menu_middleContainer1 menu_bgOFF";
	else{
		if(curClassName!="middleBackgroundOn")
			getElement(prefix+"bg"+id).className = "menu_middleContainer1 menu_bgON";
	}
	
	for (key in array){
		var element = getElement(key+id);
		if(element==null)
			continue;
		
		if(clear && (getElement(prefix+"State"+id).value == "OUT" || override)){
			element.innerHTML = "&nbsp;";
		}
		else if(element.innerHTML != array[key] || override){
			element.innerHTML = array[key];
		}
	}
}

function __hasLeftLayer(e,layer){
	//Wo ist die Maus jetzt drüber?
	var reltg = (e.relatedTarget) ? e.relatedTarget : e.toElement;
	
	if(reltg==null)
		return false;
	
	while(reltg != layer && reltg.nodeName != 'HTML'){
		reltg = reltg.parentNode
		if(reltg==null)
			break;
	}
	if(reltg!=null)
		return reltg.nodeName=='HTML';
	else
		return false;
}

function slideUpAll(prefix,currentId,minHeight,maxHeight){
	var i = 1;
	var element = null;
	while((element = getElement(prefix+i))!=null){
		if(getElement(prefix+"State"+i).value == "IN" && i != currentId){
			setVisible("sub"+prefix+i,false);
			//Für den IE6
			getStyle("sub"+prefix+i).display = "none";
			getElement(prefix+"State"+i).value = "OUT";
			
			var browser = getBrowser();
			
			menuSlide(prefix,i,maxHeight,minHeight,false,false,browser['vendor'],browser['version']);	
		}
		i++;
	}
}

function menuSlide(prefix,id,currentHeight,finalHeight,slideOut,keepStyle,browserVendor, browserVersion){
	var elementName = prefix+id;
	var dy = slideOut?(7):(-7);
	
	//IE6 keine Animation
	if((slideOut && currentHeight+dy > finalHeight) || (!slideOut && currentHeight+dy < finalHeight) || (browserVendor == "InternetExplorer" && browserVersion <= 6))
		dy = finalHeight-currentHeight;
	
	if((slideOut && currentHeight < finalHeight) || (!slideOut && currentHeight > finalHeight)){
		var newHeight = currentHeight+dy;
		
		getStyle(elementName).height = newHeight+"px";
		
		window.setTimeout("menuSlide('"+prefix+"',"+id+","+newHeight+","+finalHeight+","+slideOut+","+keepStyle+",'"+browserVendor+"',"+browserVersion+")",6);
	}
	else if(slideOut){
		if(getElement(prefix+"State"+id).value=="IN"){
			//Für den IE6 zum Updaten
			getStyle("sub"+elementName).display = "block";
			setVisible("sub"+elementName,true);
			if(browserVendor == "InternetExplorer" && browserVersion <= 6){
				//Für den IE6 zum Updaten
				changeStyle(prefix,false,id,true);
			}
		}
	}
	else if(!slideOut){
		getStyle(prefix+id).zIndex = 0;
		changeStyle(prefix,!keepStyle,id,false);
		getElement(prefix+"HeadlineContainer"+id).className = "menu_headlineContainer";
	}
}

function slideOut(prefix, id, minHeight, maxHeight){
	if(getElement(prefix+"State"+id).value=="OUT"){
		changeStyle(prefix,false,id,false);
		
		var menu = getElement(prefix+id);
		var menuState = getElement(prefix+"State"+id);
		
		if(menu==null)
			return;
		
		slideUpAll(prefix,id,minHeight,maxHeight);
		
		var browser = getBrowser();
		
		getElement(prefix+"HeadlineContainer"+id).className = "menu_headlineContainer_selected";
		
		menuSlide(prefix,id,minHeight,maxHeight,true,true,browser['vendor'],browser['version']);
		
		menuState.value = "IN";
		
		getStyle(prefix+id).zIndex = 20;
	}
}
