/*-------------------------------------------------------*
 * Da Menu CSS qui rox
 *
 * voir damenu.css
 *
 * © Copyright 2005 e-TF1 - Tous droits réservés
 * Conception & Réalisation : e-TF1 Développements Filiales
 *-------------------------------------------------------*/

// le script s'ajoute au chargement
//addEvent(window,"load",daMenu_onload);
window.onDomReady(daMenu_onload);

var daMenuTimeout = null;
var daMenuCurrent = null;

function daMenu_onload() {
	daMenu_init('daMenu');
}

/**
 * Masque toutes les entrées du menu.
 * Retire la classe "actif" à tous les LI si elle est présente
 * @param string id l'id du menu
 */
function daMenu_hideall(id)
{
	var navroot = document.getElementById(id);
	if ( ! navroot ) return; // erreur
	var li = navroot.getElementsByTagName("LI");
	for ( var i = 0; i < li.length; i++ ) {
		var actif = li[i].className.indexOf("actif");
		if ( actif >= 0 ) 
			li[i].className = li[i].className.substr(0,actif);
	}
}

/**
 * Affiche l'entrée "elt" du menu.
 * Ajoute la classe "actif".
 * @param elt l'élément.
 */
function daMenu_show(elt)
{
	if ( ! elt )
		return;

	if ( elt.className.indexOf("actif") < 0 )
		elt.className += " actif";
}

/**
 * Initialise le script.
 * Trouve le menu identifié par un id et l'active.
 * @param id l'id du menu
 */
function daMenu_init(id)
{
	var navroot = document.getElementById(id);
	if ( ! navroot ) return; // erreur
	
	var li = navroot.getElementsByTagName("LI");
	for ( var i = 0; i < li.length; i++ ) {
		var ul = li[i].getElementsByTagName("UL");
		if ( ul.length > 0 ) {
			li[i].onmouseover = function() {
                if(daMenuTimeout) {
                    daMenuTimeout = clearTimeout(daMenuTimeout);
                }
				// ne pas refaire si c'est déjà l'élément actif
				// évite les problèmes de scintillement
				if ( this.className.indexOf("actif") < 0 ) {
					daMenu_hideall(id);
					daMenu_show(this);
				}
			}
            // Cherche le menu par défaut de la page
            if ( li[i].className.indexOf("actif") >= 0 ) {
				daMenuCurrent = li[i];
			}
		}
	}
	
    // Remet le menu par défaut après le survol
    document.getElementById('daMenu').onmouseout = function() {
        if(!daMenuTimeout) {
            daMenuTimeout = setTimeout("daMenu_default()",5000);
         }
    }
}

function daMenu_default() {
    daMenu_hideall('daMenu');
    daMenu_show(daMenuCurrent);
}
