<!--// Michel Deboom février 2005, menu arborescent expansif sans image 
    // paramétrage :
	

var ie = /MSIE/.test(navigator.userAgent);
var moz = !ie && navigator.product == "Gecko";

if(moz){
HTMLElement.prototype.__defineGetter__("children", function() {
var arr = new Array(), i = 0, l = this.childNodes.length;
for ( i = 0; i < l; i++ ) {
if ( this.childNodes[ i ].nodeType == 1 ) {
arr.push( this.childNodes[ i ] );
}
}
return arr;

});


HTMLElement.prototype.__defineGetter__("firstChild", function() {
var node = this.childNodes[ 0 ];
while (node.nodeType != 1) node = node.nextSibling;
return node;

});

HTMLElement.prototype.__defineGetter__("lastChild", function() {
var node = this.childNodes[ this.childNodes.length - 1 ];
while (node.nodeType != 1) node = node.previousSibling;
return node;

});
} 




idMenu = 'menu'
idAncre = 'ancre_menu'
// mettre 0 pour désactiver une option :
mno = 1 // un seul sous-menu ouvert par niveau
lien_ouvert = location // lien ouvert par défaut

function initMenu(){
var pm;menuOuvert=[];// tableau des menus ouverts

 if(!moz){
	objMenu=document.getElementById(idMenu);//objMenu.className='menu';
	liste=objMenu.getElementsByTagName('li');
	//for(i=0;i<liste.length;i++){L=liste[i];lien=L.firstChild.href;
	for(i=0;i<liste.length;i++){L=liste[i];lien=L.firstChild.href;
	//alert('Lien '+lien+'\n\nLocation '+location+'\n\n i '+i+'\n\nL='+L);
	  if(lien){//L.className="normal" 
	  	liencours=location.href;
		var pos=liencours.lastIndexOf("&pres=");
	  	if(pos>-1){
	   		var lg=liencours.length;
			var fin=lg-(lg-pos);
			var lien_en_cours=liencours.substring(0,fin)
			
		}
	
	 
	  // repère le lien de la page en cours
	    if(lien==location || lien==lien_en_cours){
	      pm=L.parentNode;//L.firstChild.className="lien_page"
	    }
	  }
	  //ajoute un titre cliquable
	  if(L.getElementsByTagName('ul')[0]){ // sous-menu existant
	    titre=L.firstChild.data;L.removeChild(L.firstChild);
		L.innerHTML='<a href="#" title="Développer" onkeydown="af(this)" onmousedown="af(this,1);return false">'+titre+'<\/a>'+L.innerHTML;
	    ef(L.firstChild) // réduit les sous_menus
	  }
	}
}else{
	objMenu=document.getElementById(idMenu);//objMenu.className='menu';
	liste=objMenu.getElementsByTagName('li');
	//liste=document.getElementsByName('smenuli');
	//for(i=0;i<liste.length;i++){L=liste[i];lien=L.firstChild.href;
	for(i=0;i<liste.length;i++){L=liste[i];lien=L.lastChild.href;
	//alert('Lien '+lien+'\n\nLocation '+location+'\n\n i '+i+'\n\nL='+L);
	  if(lien){//L.className="normal" 
	 		liencours=location.href;
			lien_en_cours="";
		   	var pos=liencours.lastIndexOf("&pres=");
		  	if(pos>-1){
		   		var lg=liencours.length;
				var fin=lg-(lg-pos);
				lien_en_cours=liencours.substring(0,fin)
			}
	
	 
	  // repère le lien de la page en cours
	    if(lien==location || lien==lien_en_cours){
	        pm=L.parentNode;//L.firstChild.className="lien_page"
	    }
	  }
	  //ajoute un titre cliquable
	  if(L.getElementsByTagName('ul')[0]){ // sous-menu existant
	    titre=L.firstChild.data;L.removeChild(L.firstChild);
		L.innerHTML='<a href="#" title="Développer" onkeydown="af(this)" onmousedown="af(this,1);return false">'+titre+'<\/a>'+L.innerHTML;
	    ef(L.firstChild) // réduit les sous_menus
	  }
	}
}
// montre le lien de la page et ouvre les menus parents
gf=0;if(pm)while(pm.id!=idMenu && gf<30){af(pm.parentNode.firstChild);pm=pm.parentNode.parentNode}
ancreMenu();
}

function ancreMenu(){ // déplace le menu construit dans l'élément désigné.
  ancre=document.getElementById(idAncre);
   if(ancre){ancre.appendChild(objMenu);//ancre.className='ancre_menu'
  }
}

function ef(el) { // réduit.
with (el){
  parentNode.getElementsByTagName('ul')[0].style.display="none";
  title="Développer";parentNode.className="reduit";

  }
return false
}

function af(el,mulot) { // développe un sous-menu .
if(mulot)el.removeAttribute('href') // supprime le lien prévu pour la navigation clavier.
with(el){
	sous_menu=parentNode.getElementsByTagName('ul')[0]
  	if(sous_menu.style.display=="none"){
    	sous_menu.style.display="block";title="Réduire";parentNode.className="ouvert";
   	} else {
   		sous_menu.style.display="none";title="Développer";parentNode.className="reduit";
	}
  }
  niveau=0;
  // un seul menu ouvert par niveau
  while(sous_menu.id!=idMenu&& niveau<30){niveau++;sous_menu=sous_menu.parentNode.parentNode}
  
  if(menuOuvert[niveau] && el!=menuOuvert[niveau] && mno)ef(menuOuvert[niveau]);menuOuvert[niveau]=el;
}

// Fonction pour ajouter ou enlever un événement sans écraser l'existant. 
function addEvent(obj,evType,fn,capt){
if(obj.addEventListener){obj.addEventListener(evType,fn,capt);return true;} // DOM 2
else if(obj.attachEvent)obj.attachEvent("on"+evType,fn) // IE 5+
else {return false;}
} 


addEvent(window,"load",initMenu)

//-->
