﻿window.onload = function()
{
	loadMenu();
}

var submenuTimeout ;
var currentMenu = null;
function loadMenu()
{	
	var ul = document.getElementById("MenuDeroulant");
	var li = ul.getElementsByTagName("li");
	for(var i=0; i < li.length; i++)
	{
		if(li[i].id != null)
		{
			var nid = li[i].id.substring(li[i].id.lastIndexOf("-")+1,li[i].id.length) ;
			var submenu = document.getElementById("Submenu-"+nid);
			if(submenu)
			{
				hide(submenu);
				li[i].onmouseover = function()
				{
					hideUnhover(currentMenu);
					// Affichage du sous menu
					var nid = this.id.substring(this.id.lastIndexOf("-")+1,this.id.length) ;
					var submenu = document.getElementById("Submenu-"+nid);
					currentMenu = submenu;
					clearTimeout(submenuTimeout);
					display(currentMenu);
					this.className = this.className.replace(/hover/,"");
					this.className += " hover";
					// Positionnement du sous menu
					var submenuWidth = currentMenu.offsetWidth;
					var liWidth = this.offsetWidth;
					var pos = findPos(this);
					var posx = pos[0];
					var posy = pos[1]; 
					//currentMenu.style.left = posx +"px";
					//currentMenu.style.top = posy +"px";
					currentMenu.onmouseover = function(){
						var nid = this.id.substring(this.id.lastIndexOf("-")+1,this.id.length) ;
						var menu = document.getElementById("Menu-item-"+nid);
						menu.className = menu.className.replace(/hover/,"");
						menu.className += " hover";
						clearTimeout(submenuTimeout);
					};
					submenu.onmouseout = function(){
						submenuTimeout = setTimeout('hideUnhover(currentMenu)',150);
					};
				}
				li[i].onmouseout = function()
				{
					this.className = this.className.replace(/hover/,"");
					submenuTimeout = setTimeout('hide(currentMenu)',20);
				}
			}
		}
	}
}

function display(o)
{
	if(o) o.style.display = "block";
}

function hide(o)
{
	if(o) o.style.display = "none";
}

function hideUnhover(o)
{
	hide(o);
	if(o)
	{
		var nid = o.id.substring(o.id.lastIndexOf("-")+1,o.id.length) ;
		var menu = document.getElementById("Menu-item-"+nid);
		menu.className = menu.className.replace(/hover/,"");
	}
}

function findPos(obj) {
	var curleft = curtop = 0;
	if (obj.offsetParent) {
		curleft = obj.offsetLeft
		curtop = obj.offsetTop
		while (obj = obj.offsetParent) {
			curleft += obj.offsetLeft
			curtop += obj.offsetTop
		}
	}
	return [curleft,curtop];
}
