// browser detection
isNS4 = (document.layers) ? true : false;
isIE4 = (document.all && !document.getElementById) ? true : false;
isIE5 = (document.all && document.getElementById) ? true : false;
isNS6 = (!document.all && document.getElementById) ? true : false;

if (isNS4)
{
	layerSyntaxOpen = "document.layers['"; 
	layerSyntaxClose = "']";
}
else if (isIE4)
{
	layerSyntaxOpen = "document.all['"; 
	layerSyntaxClose = "'].style";
}
else if (isIE5 || isNS6)
{
	layerSyntaxOpen = "document.getElementById('"; 
	layerSyntaxClose = "').style";
}

var z=1;
var menuNum = 0;

// Set up menu environment where menus are flagged '-1' for hidden and '1' for visible
var activeMenu = new Array();

// write script to write submenu layer (name each layer in sequence ie. "submenu" + menuNum)
function writeSubmenu(name)
{
	activeMenu[menuNum] = new Array();
	activeMenu[menuNum][0] = name;
	activeMenu[menuNum][1] = -1;
	
	document.write(((isNS4) ? "<LAYER" : "<DIV")
		+ " id='submenu" + menuNum + "' class='menulayer'"
		+ " onMouseOver='activeMenu[" + menuNum + "][1]=0' onMouseOut='activeMenu[" + menuNum + "][1]=-1'"
		+ ' style="left:-100px; position:absolute; top:-100px; visibility:hidden; width:auto;">');
	menuNum++;
}

// write script to close submenu layer
function finishSubmenu()
{
	document.write(((isNS4) ? "</LAYER>" : "</DIV>"))
}

function setLyr(obj,name)
{
	var index = 0;
	for (i = 0; i < activeMenu.length; i++)
	{
		if(activeMenu[i][0] == name)
		{
			activeMenu[i][1] = 1;
			index = i;
			break;
		}
	}
	var x = new getObj("submenu" + index);
	
	var newX = findPosX(obj)-obj.offsetWidth;
	var newY = findPosY(obj)+13+obj.offsetHeight;
	
	x.style.visibility = 'hidden';
	
	if(isIE4 || isIE5)
	{
		x.style.top = newY - 22 +obj.offsetHeight;
		//var y = parseInt(x.style.width.substring(0,x.style.width.indexOf('p')));
		//alert(x.style.width.substring(0,x.style.width.indexOf('p')));
		x.style.left = newX + obj.offsetWidth;
	}
	else
	{
		//alert('here ' + newY + ' ' + obj.offsetParent.offsetParent);
		x.style.top = newY - 22 + obj.offsetHeight;
		//var y = parseInt(x.style.width.substring(0,x.style.width.indexOf('p')));
		//alert(x.style.width.substring(0,x.style.width.indexOf('p')));
		x.style.left = newX +  obj.offsetWidth;
	}
	
	//x.style.zindex = 10;
	x.style.visibility = 'visible';
}


////////////////////////////////////////////////////////////////////EN PLUS SI ON VEUT PARAMETRER 2 TYPES DE MENUS/////////////////////
function setLyr2(obj,name)
{
	var index = 0;
	for (i = 0; i < activeMenu.length; i++)
	{
		if(activeMenu[i][0] == name)
		{
			activeMenu[i][1] = 1;
			index = i;
			break;
		}
	}
	var x = new getObj("submenu" + index);
	
	var newX = findPosX(obj)-170;
	var newY = findPosY(obj)+13+obj.offsetHeight;
	
	x.style.visibility = 'hidden';
	
	if(isIE4 || isIE5)
	{
		x.style.top = newY - 22 +obj.offsetHeight;
		//var y = parseInt(x.style.width.substring(0,x.style.width.indexOf('p')));
		//alert(x.style.width.substring(0,x.style.width.indexOf('p')));
		x.style.left = newX + obj.offsetWidth;
	}
	else
	{
		//alert('here ' + newY + ' ' + obj.offsetParent.offsetParent);
		x.style.top = newY - 22 + obj.offsetHeight;
		//var y = parseInt(x.style.width.substring(0,x.style.width.indexOf('p')));
		//alert(x.style.width.substring(0,x.style.width.indexOf('p')));
		x.style.left = newX +  obj.offsetWidth;
	}
	
	//x.style.zindex = 10;
	x.style.visibility = 'visible';
}
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////



function findPosX(obj)
{
	var curleft = 0;
	if (document.getElementById || document.all)
	{
		while (obj.offsetParent)
		{
			curleft += obj.offsetLeft
			obj = obj.offsetParent;
		}
	}
	else if (document.layers)
		curleft += obj.x;
	return curleft;
}

function findPosY(obj)
{
	var curtop = 0;
	var printstring = '';
	if (document.getElementById || document.all)
	{
		while (obj.offsetParent)
		{
			printstring += ' element ' + obj.tagName + ' has ' + obj.offsetTop;
			curtop += obj.offsetTop
			obj = obj.offsetParent;
		}
	}
	else if (document.layers)
		curtop += obj.y;
	window.status = printstring;
	return curtop;
}


function getObj(name)
{
 if (document.getElementById)
 {
	   this.obj = document.getElementById(name);
	   this.style = document.getElementById(name).style;
 }
 else if (document.all)
 {
	   this.obj = document.all[name];
	   this.style = document.all[name].style;
 }
 else if (document.layers)
 {
	   if (document.layers[name])
	   {
	   	this.obj = document.layers[name];
	   	this.style = document.layers[name];
	   }
	   else
	   {
	    this.obj = document.layers.testP.layers[name];
	    this.style = document.layers.testP.layers[name];
	   }
 }
}

function killMenu(name)
{
	for (i = 0; i < activeMenu.length; i++)
	{
		if(activeMenu[i][0] == name)
		{
			// alert('here');
			activeMenu[i][1] = -1;
			var x = new getObj("submenu" + i);
			x.style.visibility = 'hidden';
			//x.style.zindex = 1;
			break;
		}
	}
	// showMenu();
}

// Close all menus at once
function killMenus()
{
	for (i = 0; i < activeMenu.length; i++)
	{
		activeMenu[i][1] = -1;
		var x = new getObj("submenu" + i);
		x.style.visibility = 'hidden';
		x.style.zindex = 1;
	}
}

// Set 'events' triggers (Netscape only)
if ((isNS4)||(isNS6))
{
	document.captureEvents(Event.MOUSEDOWN);
	document.captureEvents(Event.MOUSEOVER);
}

// Associate events with functions
document.onclick=killMenus;
