// JavaScript Document
// Edited: 2007-05-15, Patrick Zeman, FINISH WA
// --------------------------------------------
// Öffnet bei MouseOver die Unterlisten des gewählten Menüpunkts,
// schließt bei MouseOut die geöffnete aktuelle Liste sowie die 
// durch die ID "current" benannte Unterliste des aktuellen Menüpunkts. 

function hoverMenu() {
    var LI = document.getElementById("Menu").firstChild;
    do {
        if (sucheUL(LI.firstChild)) {
            LI.onmouseout=ausblenden; LI.onmouseover=einblenden;
            LI.onfocus=einblendenviafocus; LI.onblur=ausblenden;
        }
    LI = LI.nextSibling;
    }
    while(LI);
}

function sucheUL(UL) {
    do {
        if(UL) UL = UL.nextSibling;
        if(UL && UL.nodeName == "UL") return UL;
    }
    while(UL);
    return false;
}

            
function einblenden() {
    // Löscht focus vom eventuell focusierten Menüpunkt und "schließt" diesen
    // bug in Mozilla, Netscape festgestellt, wenn aktiv: this.blur();                                              
    // Versteckt die Unterlisten des aktuellen Menüpunkts, wenn vorhanden.
    if (document.getElementById("current").firstChild) {
        if (document.getElementById("current").firstChild.nextSibling) {
            document.getElementById("current").firstChild.nextSibling.style.display="none";
        } else;
    } else;
    // Zeigt Unzerlisten des gewählten Menüpunkts.
    var UL = sucheUL(this.firstChild);
    UL.style.display = "block";         
}

// Kopie der Finktion "einblenden" jedoch ohne blur(), da sonst Menü mit focus nicht öffnen würde
function einblendenviafocus() {
    // Versteckt die Unterlisten des aktuellen Menüpunkts, wenn vorhanden.
    if (document.getElementById("current").firstChild) {
        if (document.getElementById("current").firstChild.nextSibling) {
            document.getElementById("current").firstChild.nextSibling.style.display="none";
        } else;
    } else;
    // Zeigt Unzerlisten des gewählten Menüpunkts.
    var UL = sucheUL(this.firstChild);
    UL.style.display = "block"; // onfocus wird vom IE ignoriert
}

function ausblenden() {
    sucheUL(this.firstChild).style.display = "none";

    // Versteckt die Unterlisten des aktuellen Menüpunkts, wenn vorhanden.
    if (document.getElementById("current").firstChild) {
        if (document.getElementById("current").firstChild.nextSibling) {
            document.getElementById("current").firstChild.nextSibling.style.display="none";
        } else;
    } else;
}

window.onload = function() {
    hoverMenu();
}
