var brwsrNs4=document.layers;
var brwsrIe4=document.all;
var brwsrNs6=document.getElementById&&!document.all;

var objNiv0=null; //MainMenu
var objNiv1=null; //Menu
var objNiv2=null; //Sous-Menu
var objNiv0Old=null; //MainMenu tmp
var objNiv1Old=null; //Menu tmp
var objNiv2Old=null; //Sous-Menu tmp

var objWinNiv2=null; //Fenêtre Sous-Menu
var objWinNiv2Old=null; //Fenêtre Sous-Menu tmp

function swapmenucell(o)
{
	if (o.className != "menucellselected")
		o.className = o.className!="menucell"?"menucell":"menucellreverse";

	if(navigator.appName.indexOf("Netscape")!=-1) {o.style.cursor='pointer';};
}

function setMenucell(o, sClass)
{
	if (o.className != "menucellselected")
		o.className = sClass;
}



function swapmenucellM(o)
{
	if (objNiv1Old != null)
	{
		if (objNiv1Old.id != null)
		{
			setMenucell(objNiv1Old, "menucell");
		}

		objNiv1=null;
		objNiv1Old=null;
	}
}

function swapmenucellSM(o)
{
	swapmenucell(o)

	if (objNiv1Old != null)
	{
		if (objNiv1Old.id != objNiv1.id)
			setMenucell(objNiv1Old, "menucell");
		else
			setMenucell(objNiv1Old, "menucellreverse");
	}
}

function swapmenucellSS(o)
{
	if (objNiv1 != null)
	{
		if (objNiv1.id != o.id)
			setMenucell(objNiv1, "menucellreverse");
		else
			setMenucell(objNiv1, "menucell");
	}

	swapmenucell(o)
}

function Affiche(nObjet)
{
	if(brwsrIe4) // Internet explorer
	{
		eval(nObjet).style.visibility = (eval(nObjet).style.visibility='visible');
	}
	else if(brwsrNs4) // Netscape 4.x
	{
		document.eval(nObjet).visibility = (document.eval(nObjet).visibility='show');
	}
	else if(brwsrNs6) // Netscape 6 (mozilla)
	{
		var divns6 = document.getElementsByTagName("div")
		divns6[nObjet].style.visibility = (divns6[nObjet].style.visibility='visible');
	}
	
	if (objNiv0 != null)
	{
		setMenucell(objNiv0, "menucellreverse");
	}
	if (objNiv0Old != null)
	{
		if (objNiv0Old != objNiv0)
			setMenucell(objNiv0Old, "menucell");
	}
}

function setNiv0(nObjet)
{
	objNiv0Old=objNiv0;
	objNiv0=nObjet;

	if (objNiv1 != null)
		setMenucell(objNiv1, "menucell");

	if (objNiv1Old != null)
	{
		if (objNiv1Old != objNiv1)
			setMenucell(objNiv1Old, "menucell");
	}

	if (objNiv0 != null)
		setMenucell(objNiv0, "menucellreverse");

	if (objNiv0Old != null)
	{
		if (objNiv0Old != objNiv0)
			setMenucell(objNiv0Old, "menucell");
	}
}

function setNiv1(nObjet)
{
	if (objWinNiv2 != null)
		CacheSousMenu(objWinNiv2.id)

	objNiv1Old=objNiv1;
	objNiv1=nObjet;

	if (objNiv0 != null)
		setMenucell(objNiv0, "menucellreverse");

	if (objNiv0Old != null)
	{
		if (objNiv0Old != objNiv0)
			setMenucell(objNiv0Old, "menucell");
	}
}


function setNiv2(nObjet)
{
	objNiv2Old=objNiv2;
	objNiv2=nObjet;

	if (objNiv0 != null)
		setMenucell(objNiv0, "menucellreverse");

	if (objNiv0Old != null)
	{
		if (objNiv0Old != objNiv0)
			setMenucell(objNiv0Old, "menucell");
	}
}

function setWinNiv2(nObjet)
{
	objWinNiv2Old=objWinNiv2;
	objWinNiv2=nObjet;
}

function AfficheMenu(nObjet, pObjParent)
{
	//Determiner la position de la Div
	var PosX=getAbsX(document.getElementById(pObjParent));
	var PosY=getAbsY(document.getElementById(pObjParent));

	if(brwsrIe4) // Internet explorer
	{
		eval(nObjet).style.top = PosY + 20;
		eval(nObjet).style.left = PosX;
	}
	else if(brwsrNs4) // Netscape 4.x
	{
		document.eval(nObjet).top = PosY + 20;
		document.eval(nObjet).left = PosX;
	}
	else if(brwsrNs6) // Netscape 6 (mozilla)
	{
		var divns6 = document.getElementsByTagName("div")
		divns6[nObjet].style.top = PosY + 20;
		divns6[nObjet].style.left = PosX;
	}
	//Afficher la Div
	Affiche(nObjet);
}

function AfficheSousMenu(nObjet, pObjParent)
{
	//Determiner la position de la Div
	var PosX=getAbsX(document.getElementById(pObjParent));
	var PosY=getAbsY(document.getElementById(pObjParent));
	var Width=document.getElementById(pObjParent).offsetWidth;
	var objWidth=document.getElementById(nObjet).offsetWidth;

	var bodyWidth=document.body.offsetWidth;


	if(brwsrIe4) // Internet explorer
	{
		eval(nObjet).style.top = PosY;

		if ((PosX + Width + objWidth) > (bodyWidth))
			eval(nObjet).style.left = PosX - objWidth;
		else
			eval(nObjet).style.left = PosX + Width;
	}
	else if(brwsrNs4) // Netscape 4.x
	{
		document.eval(nObjet).top = PosY;

		if ((PosX + Width + objWidth) > (bodyWidth))
			document.eval(nObjet).left = PosX - objWidth;
		else
			document.eval(nObjet).left = PosX + Width;
	}
	else if(brwsrNs6) // Netscape 6 (mozilla)
	{
		var divns6 = document.getElementsByTagName("div");
		divns6[nObjet].style.top = PosY;

		if ((PosX + Width + objWidth) > (bodyWidth))
			divns6[nObjet].style.left = PosX - objWidth;
		else
			divns6[nObjet].style.left = PosX + Width;
	}
	//Afficher la Div
	Affiche(nObjet);

	setWinNiv2(document.getElementById(nObjet));
}

function getAbsX(elt) { return (elt.x) ? elt.x : getAbsPos(elt,"Left"); }
function getAbsY(elt) { return (elt.y) ? elt.y : getAbsPos(elt,"Top"); }

function getAbsPos(elt,which)
{
	iPos = 0;
	while (elt != null)
	{
		iPos += elt["offset" + which];
		elt = elt.offsetParent;
	}
	return iPos;
}

function Cache(nObjet)
{
	if(brwsrIe4) // Internet explorer
	{
		eval(nObjet).style.visibility = (eval(nObjet).style.visibility='hidden');
	}
	else if(brwsrNs4) // Netscape 4.x
	{
		document.eval(nObjet).visibility = (document.eval(nObjet).visibility='hidden');
	}
	else if(brwsrNs6) // Netscape 6 (mozilla)
	{
		var divns6 = document.getElementsByTagName("div")
		divns6[nObjet].style.visibility = (divns6[nObjet].style.visibility='hidden');
	}
}

function CacheMenu(nObjet)
{
	Cache(nObjet);

	//Remettre la class initiale du menu niv0
	if (objNiv0 != null)
		setMenucell(objNiv0, "menucell");

	if (objWinNiv2 != null)
		CacheSousMenu(objWinNiv2.id)
}

function CacheSousMenu(nObjet)
{
	Cache(nObjet);
}
