var ssmenuactif=new Array();
var niveauactif=0;
var body_onclick_actif=false;
var delai=500;
var timeOut=0;
var timeOver=1;
var nomTimer=0;
function showssmenu(id,niveau)
{
	if (nomTimer != 0)
		clearTimeout(nomTimer);
	//document.title="over : "+niveauactif+" : "+new Date().getTime();
	timeOver=new Date().getTime();
	if (id==-1 && niveau==-1)
		return;
	if(!body_onclick_actif)
	{
		var body=document.getElementsByTagName("body");
		body[0].setAttribute("onclick","hidessmenuactif(1);");
		body[0].onclick=function (){hidessmenuactif(1);};
		body_onclick_actif=true;
		
		NavName = navigator.appName;
		NavVers = navigator.appVersion;
		Nav = NavVers;
	}

	hidessmenuactif(niveau)
	var ssmenu=document.getElementById("ssmenu"+id);
	if(ssmenu)
	{
		ssmenu.style.display="block";
		ssmenuactif[niveau]="ssmenu"+id;
		voirSelect('hidden');
	}
	else
		ssmenuactif[niveau]="";
	niveauactif=niveau;
}
function hidessmenuactif(niveau)
{
	if(niveau<=1)
		voirSelect('visible');
	if(niveauactif!=0 && niveau<=niveauactif)
	{
		for(var i=niveauactif;i>=niveau;i--)
		{
			var ssmenudesactive=document.getElementById(ssmenuactif[i]);
			if(ssmenudesactive)
			{
				ssmenudesactive.style.display="none";
			}
			ssmenuactif[i]="";
		}
	}
}
function hideMenu()
{
	//document.title="out : "+niveauactif+" : "+new Date().getTime();
	nomTimer=setTimeout("cacherMenu();", delai);
	timeOut=new Date().getTime();	
}
function cacherMenu()
{
	if (timeOut > timeOver)
	{
		//document.title="cacher : "+niveauactif+" : "+new Date().getTime();
		for(var i=niveauactif;i>=1;i--)
		{
			var ssmenudesactive=document.getElementById(ssmenuactif[i]);
			if(ssmenudesactive)
			{
				ssmenudesactive.style.display="none";
			}
			ssmenuactif[i]="";
		}
	}
}

// bug ie5 & ie6 corrigé : cache les <select> quand le menu est visible
function voirSelect(v){
	if(!window.XMLHttpRequest){
		var elem=document.getElementsByTagName('select');
		for(i=0;i<elem.length;i++)
			elem[i].style.visibility=v;
	}
}
