function montre(id){
effaceTout();	
document.getElementById("cache").style.display = "block"; // affiche le calque de masque

var menu = document.getElementById("menu"); // racine du menu
var liste_div = menu.getElementsByTagName("div");// tout les div du menu
smenuTaille=0; // initialise à 0

// Determine le nb de calque de 2eme niveau
for (i=0;i<liste_div.length;i++){
	if(liste_div[i].id.indexOf("_") == -1 ){ // Si l' ID du calque liste_div[i] ne contient  pas de _
	smenuTaille++; // incrémente
	}
}

var d = document.getElementById("liste" +id); // recupere le calque de niveau 2 à allumer
var c = document.getElementById("intitule" +id);// recupere le lien de niveau 1 à allumer

	for (i=1; i<smenuTaille; i++) 
	{
	document.getElementById("liste" + i).style.visibility = "hidden"; // cache tt les calques de niveau 2
		// affecte la classe aux liens de niveau 1
		if(document.getElementById("intitule" + i).className == "niveau1b"){ // cas particulier du bouton "tout les produits"
		document.getElementById("intitule" + i).className = "niveau1b";
		}else{
		document.getElementById("intitule" + i).className = "niveau1";
		}
	}
	
	d.style.visibility = "visible"; // affiche le caclque de niveau 2 courant
	// affecte la classe au lien de niveau 1 courant
	current_class = c.className;
	if(current_class== "niveau1b")// cas particulier du bouton "tout les produits"
	{
	c.className = "niveau1b";
	}else{
	c.className = "niveau1_on";
	}
smenuTaille=0;// remet à 0
}


function calcul(racine){ // crée des tableaux des liens et des div
var menu = document.getElementById("liste"+racine); // racine du menu
liste_div = menu.getElementsByTagName("div");// tout les div du menu
liste_a = menu.getElementsByTagName("a");// tout les a du menu
liste_div2 = new Array();
liste_a2 = new Array();
	// Determine le nb de calque de 3eme niveau
	for (i=0;i<liste_div.length;i++){
		if(liste_div[i].id.indexOf("_") != -1 ){ // Si l' ID du calque liste_div[i] contient  un _
		liste_div2.push(liste_div[i].id);
		}
	}
	//alert(liste_div2);
	for (i=0;i<liste_a.length;i++){
		if(liste_a[i].id.indexOf("_") != -1 ){ // Si l' ID du calque liste_div[i] contient  un _
		liste_a2.push(liste_a[i].id);
		}
	}
	//alert(liste_a2);
}

function pair(nb)
{
   return ((nb-1)%2);
   // renvoie 1 si le nombre est pair
   // renvoie 0 si le nombre est impair
}

function montre2(id){
	var nb = id.split("_");
	if(pair(nb.length)==1){ // si nb.length est pair
	var nb = nb.length-1;	
	}else{
	var nb = nb.length;	
	}
	var racine = id.substring(0,nb); // determine le point de départ pour calcul()

	calcul(racine);
	
	var d = document.getElementById("liste" +id); // recupere le calque de niveau n-1 à allumer
	var c = document.getElementById("intitule" +id); // recupere le lien de niveau n à allumer
	
		for (i=0; i<liste_div2.length; i++) 
		{
		document.getElementById(liste_div2[i]).style.visibility = "hidden";
		}
		for (i=0; i<liste_a2.length; i++) 
		{
		document.getElementById(liste_a2[i]).className = "niveau2";
		}
	
		d.style.visibility = "visible";
		c.className = "niveau2_on";
}

function effaceTout(){
var menu = document.getElementById("menu"); // racine du menu
var liste_div = menu.getElementsByTagName("div");// tout les div du menu
var liste_a = menu.getElementsByTagName("a");// tout les a du menu

	for(i=0;i<liste_a.length;i++){// rement les bonnes classes
		if(liste_a[i].className == 'niveau1_on'){
		liste_a[i].className = "niveau1";
		}
		if(liste_a[i].className == 'niveau1_in'){
		liste_a[i].className = "niveau1_in";
		}
		if(liste_a[i].className == 'niveau2_on'){
		liste_a[i].className = "niveau2";
		}
	}
	
	for(i=0;i<liste_div.length;i++){// efface tout les div du menu
	document.getElementById(liste_div[i].id).style.visibility = "hidden";
	}
document.getElementById("cache").style.display = "none";// cache le calque de masque
}
function efface(){
timer = setTimeout("effaceTout()",1000);	
}
function clearEfface(){
clearTimeout(timer);	
}