var NOHIDE = 0;
var HIDE   = 1;
var RENDER = 3;
var MOUSEMOVED = 4;
var MOUSEONCURRENT = 5;
var menustate = NOHIDE;
var OID = 0;

function checkBrowserName(nr)
{
 if(navigator.appName=="Netscape")
 {
   with(document.getElementById('sid0').style)
	 {
	   display="inline";
		 left=0;
	 }
	 with(document.getElementById('sid'+nr).style)
	 {
	   display="inline";
		 position="absolute;";
	 }
	 document.getElementById('sid'+nr).innerHTML="<-<br />->";
 }
}

function showMenu(nr){
			var stat = menustate;
			if(OID == nr){
				stat = MOUSEONCURRENT;
			}else{
				if (OID>0) hideMenuInstantly(OID);OID=nr; 
			}
			menustate = NOHIDE;
			document.getElementById('sid'+nr).style.display="inline";
			hideMenu(nr);
}

function hideMenu(nr){
	var stat = menustate;
	if(stat == MOUSEMOVED){
		menustate = HIDE;
	}
	setTimeout (function(){
		if(menustate == HIDE){
			var divAsId = 'sid'+nr;
			var maxH = getElementHeight(document.getElementById(divAsId));
			if(maxH > 0){
				menustate = RENDER;
				setTimeout("scaleDiv('"+nr+"', "+maxH+", 0);", 50);
			}
		}
	}, 1000);
}

function hideMenuInstantly(nr){
		var divAsId = 'sid'+nr;
			var maxH = getElementHeight(document.getElementById(divAsId));
			if(maxH > 0){
				menustate = RENDER;
				setTimeout("scaleDiv('"+nr+"', "+maxH+", 0);", 50);
			}
}
function scaleDiv(nr, maxH, count){
	var divAsId = 'sid'+nr;
	count++;
	setElementHeight(document.getElementById(divAsId), maxH - maxH/5*count);
	setTimeout(function(){hideDiv(divAsId,nr)}, maxH*2);
	if(document.getElementById(divAsId).style.display=="hidden"){
		count = 20;
	}
	if(count >= 5){
		if(count == 20){
			
		}else{
			menustate = HIDE;
			hideDiv(divAsId, nr);
		}
	}else{
		setTimeout("scaleDiv('"+nr+"', "+maxH+", "+count+");", 20);
	}
}



function hideDiv(divAsId,nr){
		var stat = menustate;
		if(stat == HIDE){
			document.getElementById(divAsId).style.display="none";
			document.getElementById(divAsId).style.height="auto";
			setOpacity(document.getElementById(divAsId),1);
			menustate = NOHIDE;
		}
}
function getElementHeight(elementAsObject){
    return elementAsObject.offsetHeight-9;
}

function setElementHeight(elementAsObject, elementAsHeight){
		elementAsObject.style.height = elementAsHeight+"px";
		if(!getOpacity(elementAsObject))setOpacity(elementAsObject, 1);
		setOpacity(elementAsObject,getOpacity(elementAsObject)-0.05);
}

function checkHide(nr){
	var stat = menustate;
	if(nr == OID && menustate != MOUSEONCURRENT){
		hideMenu(nr);
		menustate = HIDE;
	}
}
function isNotReadyToHide(nr){
	menustate = MOUSEMOVED;
}

function setOpacity(el,val) {
	el.style.opacity = val;
	el.style.filter = 'alpha(opacity=' + val*100 + ')';
}

function getOpacity(el) {
	if(!document.all){
		return el.style.opacity;
	}else{
		return el.style.filter ? parseFloat((el.style.filter.split('alpha(opacity=')[1].split(')')[0]/100)) : false;
	}
}
