// Procédures globales du projet
function PGNJS_GESTION_MENU()
{
	var xLiens = document.getElementsByTagName("A"); // On recupere tous les liens de la page
	var xNomMenu;
	var xCalqueMenu;
	var xCalqueFinSurvol = document.getElementById("dwwCELSORTIEMENUDEROULANT");
	
	// xCalqueFinSurvol : 
	// C'est une cellule transparente qui sert de fin de survol du menu
	// On l'affiche uniquement quand un des menus est affiché, elle est au dessous du menu, et au dessus de tout le reste de la page
	// Et au survol de cette cellule (evenement OnMouseOver) on cache le menu	
				
	// Si la variable gMenuDerouleEnCours est vide, aucun menu n'est en survol
	if (( gMenuDerouleEnCours != "" ))
	{
		xCalqueFinSurvol.style.visibility = "visible";
	}else{
		xCalqueFinSurvol.style.visibility = "hidden";
	}
	
	
	// On parcours tous les liens de la page pour retrouver tous ceux du menu
	for(var i = 0; i < xLiens.length; i++) { // parcours des lignes
		
		// si le lien correspond a un lien du menu deroulant
		if (( xLiens[i].name.substr(0,18) == "LK_MENU_DEROULANT_" )) {
			
			// On recupere son nom
			xNomMenu = xLiens[i].name.substr(18);
			xCalqueMenu = document.getElementById("dwwCELMENUDEROULANT"+xNomMenu);
			
			// Si le lien est celui en survol => on affiche le calque correspondant
			if (( xNomMenu == gMenuDerouleEnCours )) {			
				xCalqueMenu.style.visibility = "visible";
				xLiens[i].className = "Menu-Module-Deroulant-Deroule";				
			}else{ // sinon on le cache
				xCalqueMenu.style.visibility = "hidden";
				xLiens[i].className = "Menu-Module-Deroulant";
			}
		}
	}
}

function PGNJS_INIT_MENU_DEROULANT()
{
	// La page utlisant ces procedures doit contenir 4 calques(cellules):
	// - CEL_LIENS_MENU_DEROULANT : cette cellule contient les liens du menu (le menu en lui même)
	// 							 ces liens doivent forcement avoir un nom commencant par 'LK_MENU_DEROULANT_'
	// 							 par exemple : LK_MENU_DEROULANT_PARAMETRAGE
	//
	// - CEL_MENU_DEROULANT : cette cellule contient les cellules qui doivent apparaitre lorsque l'on clique sur un item du menu
	//						ces cellules doivent forcement avoir un nom composé de 'CEL_MENU_DEROULANT_' et du nom du menu
	// 						par exemple : CEL_MENU_DEROULANT_PARAMETRAGE
	//
	// - CEL_SORTIE_MENU_DEROULANT : Cette cellule sert de fin de survol du menu elle doit etre dans CEL_CORPS et être vide
	//
	// - CEL_CORPS : cellule dans laquelle on place tous les autres elements de la page
	//
	

	var xCalquePage						= document.getElementById("dwwCELCORPS");
	var xCalqueMenuDeroulant			= document.getElementById("dwwCELMENUDEROULANT");
	var xCalqueLiensMenuDeroulant		= document.getElementById("dwwCELLIENSMENUDEROULANT");
	var xCalqueFinSurvol 				= document.getElementById("dwwCELSORTIEMENUDEROULANT");
	var xLiens = document.getElementsByTagName("A"); // On recupere tous les liens de la page
	var xNomMenu;
	var xCalqueMenu;
	var xCalqueLien;
	var xParent;
	var xHauteur;
	var xLargeur;
	
	
	// xCalqueFinSurvol : 
	// C'est une cellule transparente qui sert de fin de survol du menu
	// On l'affiche uniquement quand un des menus est affiché, elle est au dessous du menu, et au dessus de tout le reste de la page
	// Et au survol de cette cellule (evenement OnMouseOver) on cache le menu	
	
	
	// redimensionnement de la cellule pour qu'elle occupe toute la page
	xCalqueFinSurvol.style.position = "absolute";
	xCalqueFinSurvol.style.top  = 0 ;
	xCalqueFinSurvol.style.left = 0 ;
	xCalqueFinSurvol.style.width = 1000 ;
	xCalqueFinSurvol.style.height = 520;
	
//	// Pour eventuellement mettre de l'opacité sur ce calque
//	xCalqueFinSurvol.style.filter = "alpha(opacity=45)";
//	xCalqueFinSurvol.style.opacity = 0.45;
//	xCalqueFinSurvol.style.backgroundColor = "#FFFFFF";
	
	// On applique le code voulu à l'evenement OnMouseOver (car ceci n'est pas possible en WEBDEV
	xCalqueFinSurvol.onmouseover = function() {gMenuDerouleEnCours = "";PGNJS_GESTION_MENU();};

	// On met tous les calques dans le bon ordre
	xCalquePage.style.zIndex = 997;
	xCalqueMenuDeroulant.style.zIndex = 999;
	xCalqueLiensMenuDeroulant.style.zIndex = 999;
	xCalqueFinSurvol.style.zIndex = 998;
	
	// Et on cache le calque
	xCalqueFinSurvol.style.visibility = "hidden";
	
	
	// On applique le code sur les evenement onMouseOver et onClick
	
	// On parcours tous les liens de la page pour retrouver tous ceux du menu
	for(var i = 0; i < xLiens.length; i++) { // parcours des lignes
		
		// si le lien correspond a un lien du menu deroulant
		if (( xLiens[i].name.substr(0,18) == "LK_MENU_DEROULANT_" )) {
			
			// On recupere son nom
			//xNomMenu = xLiens[i].name.substr(18);
			//alert(xNomMenu);
			xLiens[i].onclick = PGNJS_CLICK_MENU ; 
			xLiens[i].onmouseover = PGNJS_MOUSEOVER_MENU ;
			
		}
	}		
	
}

function PGNJS_CLICK_MENU()
{	
	var xNomMenu = this.name.substr(18);
	
	if (gMenuDerouleEnCours == xNomMenu) 
	{
		gMenuDerouleEnCours = "";
	}else{
		gMenuDerouleEnCours = xNomMenu;
	}
	
	PGNJS_GESTION_MENU();	
}

function PGNJS_MOUSEOVER_MENU()
{
	var xNomMenu = this.name.substr(18);	

	if (gMenuDerouleEnCours != "" )
	{
		gMenuDerouleEnCours = xNomMenu;
		PGNJS_GESTION_MENU();
	}
}


