function InitMenu()
{

	var bar = menu333.childNodes;
	for(var i=0;i < bar.length;i++)
	{

		if (1)
		{
          	var menu=eval(bar[i].getAttribute('menu'))
          	menu.style.visibility = "hidden";
          	menu.style.display = 'none';

          	// bar[i].onmouseover = new Function("ShowMenu("+bar[i].id+")")
          	bar[i].onclick = new Function("ShowMenu("+bar[i].id+")")

		if (0)
		{
          	var Items = menu.childNodes;
          	for(var j=0; j<Items.length; j++)
            	{
              		var menuItem = eval(Items[j].id)

			// --- Recherche les enfants ---
                	if(menuItem.getAttribute('menu') != null)
			{ 
                    		// menuItem.innerHTML += "<Span Id="+menuItem.id+"_Arrow class='Arrow'>4</Span>"
                    		// var tmp = eval(menuItem.id+"_Arrow")
                    		// tmp.style.pixelLeft = menu.getBoundingClientRect().Right //- tmp.offsetWidth - 15
                    		FindSubMenu(menuItem.getAttribute('menu'))
			}
			// --- Recherche les commandes ----
			if (0)
			{
	 	              	if(menuItem.cmd != null)
				{
					menuItem.onclick = new Function("Do("+menuItem.id+")") 
				} 
			}
	               	menuItem.onmouseover = new Function("highlight("+Items[j].id+")")
		}
		}

		}
	}
}

function FindSubMenu(subMenu)
{
	var menu=eval(subMenu)
	var Items = menu.childNodes
	for(var j=0; j<Items.length; j++)
	{
		menu.style.visibility = "hidden";
		menu.style.display = 'none';

		var menuItem = eval(Items[j].id)
		if(menuItem.getAttribute('menu')!= null)
		{
			menuItem.innerHTML += "<Span Id="+menuItem.id+"_Arrow class='Arrow'>4</Span>"
			// var tmp = eval(menuItem.id+"_Arrow")
			//tmp.style.pixelLeft = 35 //menuItem.getBoundingClientRect().right - tmp.offsetWidth - 15
			FindSubMenu(menuItem.getAttribute('menu'))
		}
		if(menuItem.cmd != null) 
		{
			menuItem.onclick = new Function("Do("+menuItem.id+")") 
		} 
		menuItem.onmouseover = new Function("highlight("+Items[j].id+")")
	}  
} 

// *** Affichage du menu ***

function ShowMenu(obj)
{
	// --- Efface les enfants du pere (les freres)
	HideMenu(menu333)
	
	var menu = eval(obj.getAttribute('menu'))
	var bar = eval(obj.id)

	// --- Affiche la classe barOver ??? ---
	if (0) { bar.className="barOver" }

	// --- Affiche le menu correspondant ---
	if (1)
	{
		if (0) {menu.filters(0).Apply(); }
		menu.style.visibility = "visible";
		menu.style.display = '';
		menu.style.pixelTop =  obj.getBoundingClientRect().top + obj.offsetHeight + Bdy.scrollTop;
		menu.style.pixelLeft = obj.getBoundingClientRect().left + Bdy.scrollLeft;
		if (0) {menu.filters(0).Play();}
	}
}


// *** Refresh les autres enfant et mettre higligh l'élement en cous de survol ***

function highlight(obj)
{



	if (1)
	{
		// --- Recupération de l'élement PARENT en fonction de son ID ---
		var PElement = eval(obj.parentElement.id)



		// --- Si le parent a des enfants 
		if(PElement.hasChildNodes() == true)
		{  
			// --- Parcour tous les enfants pour réinitialiser les état (Style menuItem)---
			var Elements = PElement.childNodes
       			for(var i=0;i<Elements.length;i++)
       			{
        	  		TE = eval(Elements[i].id)
        	  		TE.className = "menuItem"
       			}
      		} 

		// --- Changement de la classe pour mettre un style Mouseover ---
		obj.className="ItemMouseOver"

		// --- Affichage du Title dans la barre des taches ---
		if (0) { window.defaultStatus = obj.title }
	}



	// --- Affichage du sous menu de la zone en cours ---
	if (1)
	{
		ShowSubMenu(obj);
	}


}


// *** Action a faire URL passée en parametre ***
function Do(obj)
{
	var cmd = eval(obj).cmd
	window.navigate(cmd)
}



// *** Efface le menu des freres ****
function HideMenu(obj)
{



	// Si il a des enfants ---
	if(obj.hasChildNodes()==true)
	{  
                var child = obj.childNodes;

		// Parcourir tous les enfants 
                for(var j =0;j<child.length;j++)
                {
			// --- Réinitialise les style en Bar et pas Barover
			if (0)
			{
				if (child[j].className=="barOver")
				{
					// --- Si class barOver alors mettre class Bar
	
					var bar = eval(child[j].id)
					bar.className="Bar"
				}
			}
                      
			// --- Efface le menu des freres ---
			if (1)
			{

				if (child[j].getAttribute('menu') != null)
				{

					// --- Recupere le menu 
	                          	var childMenu = eval(child[j].getAttribute('menu'))
                          	
					// Si le menu a des enfants 
					if(childMenu.hasChildNodes()==true) 
					{
						/// Cacher tous les menus des enfants 
		                               	// HideMenu(childMenu)
					}
	
					// --- Cache le menu
	                         	childMenu.style.display = "none";
	                         	childMenu.style.visibility = "hidden";

	                         }
			}
                  }
              
	}
}



function ShowSubMenu(obj)
{
	// -- Récuperation du pere pour effacer les enfants du pere (les freres)
	PMenu = eval(obj.parentElement.id);
	HideMenu(PMenu);	// Efface les freres 
	// --- Si il y a un menu 
	if(obj.getAttribute('menu') != null)
	{
		// --- Affiche ce menu ---
		var menu = eval(obj.getAttribute('menu'));
		menu.style.visibility = "visible";
		// --- Positionnement automatique
		if (1)
		{
			menu.style.pixelTop =  obj.getBoundingClientRect().top + Bdy.scrollTop + 100;
			menu.style.pixelLeft = obj.getBoundingClientRect().right + Bdy.scrollLeft + 100;
		}
		/// ---- Si ca depasse a droite ---
		if (0)
		{
			
			if(menu.getBoundingClientRect().right > window.screen.availWidth )
			{
				menu.style.pixelLeft = obj.getBoundingClientRect().left - menu.offsetWidth
			}
		}
    	}
} 



