/**
 * Création du menu animé
 * Configurer l'accordéon :
 *   -> conteneur		(string)	: id du conteneur
 *   -> rubriques		(string)	: moyen CSS d'accéder à la liste des rubriques
 *   -> sousRubriques	(string)	: moyen CSS d'accéder à la liste des sous-rubriques
 *   -> selectClasse	(string)	: classe de la rubrique sélectionnée
 *   -> utiliseCookies	(bool)		: indique les cookies sont utilisés pour garder la rubrique ouverte en dernier
 *   -> ouvreParDefaut	(int)		: position ou id de la rubrique à ouvrir par défaut (-1 si aucune)
 *   -> ouvre			(int)		: position ou id de la rubrique à ouvrir (-1 si aucune)
 *   -> vitesse			(float)		: vitesse en seconde (0 pour aucune animation)
 */

/* addRemoveEvent
********************/
function addRemoveEvent(add, el, evt, func){
	if(add){
		if(el.addEventListener) el.addEventListener(evt, func, false);
		else if (el.attachEvent) el.attachEvent("on" + evt, func);
	}else{
		if(el.removeEventListener) el.removeEventListener(evt, func, false);
		else if (el.detachEvent) el.detachEvent("on" + evt, func);
	}
}

/* subMenu
********************/
/*var shiftMenus = 30;/*HAUTEUR EN PIXEL DES BOUTONS*/
var openedMenus = new Array();

function showHideSubMenu(e){
    var evt = e || window.event;
    var evtTarget = evt.target || evt.srcElement;
    while (evtTarget.nodeName != "LI"){
        if (evtTarget.nodeName == "HTML") break;
        evtTarget = evtTarget.parentNode;
    }
	if (evtTarget.nodeName == "HTML") return;
    var parentLink = evtTarget.getElementsByTagName("a")[0];
    var submenu = evtTarget.getElementsByTagName("ul")[0];
    if(evt.type == "mouseover" && submenu){
        parentLink.className = "trigered";
        submenu.style.top = shiftMenus + "px";
        openedMenus.push([submenu, parentLink]);
    }else if(evt.type == "mouseout"){
        var relatedNode = evt.relatedTarget || evt.toElement;
        try{
            while (relatedNode.nodeName != "UL"){
                if (relatedNode.nodeName == "HTML") break;
                relatedNode = relatedNode.parentNode;
            }
        } catch(err) {    relatedNode =  document.getElementsByTagName("body")[0]; }
        for(var i=openedMenus.length-1; i>=0; --i){
            if(relatedNode.nodeName == "UL" && openedMenus[i][0] == relatedNode) break;
            openedMenus[i][0].style.top = "-6000px";
            openedMenus[i][1].className = "";
            openedMenus.pop();
        }
    }
}

function initSubMenu(){
	var menu = document.getElementById("menuTop");
	if(!menu) return;
	var menuItems = menu.getElementsByTagName("li");
	for(var i=0; i<menuItems.length; ++i){
		var submenu = menuItems[i].getElementsByTagName("ul")[0];
		if(submenu){
			submenu.style.top = "-6000px";
		}
	}
	addRemoveEvent(true, menu, "mouseover", showHideSubMenu);
	addRemoveEvent(true, menu, "mouseout", showHideSubMenu);
}

/* anchors
********************/
function initAnchors(){
	var anchors = document.getElementsByTagName("a");
	for (var i=0; i<anchors.length; ++i){
		if (!anchors[i].getAttribute("href") || !anchors[i].getAttribute("rel")) continue;
		var relation = String(anchors[i].getAttribute("rel"));
		if (relation.match("popup")) anchors[i].onclick=popup;
		if (relation == "external") anchors[i].onclick=externalLink;
	}
}
function popup(){
	var relation = String(this.getAttribute("rel"));
	if(relation == "popup"){
		window.open(this, "pop", "scrollbars=no");
	}else{
		var arguments = relation.substring(6,relation.length-1).split(";");
		window.open(this,arguments[0],'toolbar=0,location=0,directories=0,status=0,menubar=0,' + arguments[1] + ',resizable=no,width=' + arguments[2] + ',height=' + arguments[3] + ',top=' + arguments[4] + ',left=' + arguments[5]);
	}
	return false;
}
function externalLink(){
	window.open(this);
	return false;
}


/* init
********************/
addRemoveEvent(true, window, "load", initSubMenu);
addRemoveEvent(true, window, "load", initAnchors);

