var menuContainers     = new Array();
var menuCurrentelement = null;

function menuInit()
{
    var elements  = document.getElementsByTagName('div');
    
    for (var elementsCount = 0; elementsCount < elements.length; elementsCount++) {
        var element = elements[elementsCount];
        
        if (element.className == 'untermenu1' || element.className == 'untermenu2' ) {
            menuContainers[menuContainers.length] = element;
            element.style.display = 'none';
            element.onmouseout = function(e) {
                if (!e) {
                    var e = window.event;
                }
                
                var reltg = (e.relatedTarget) ? e.relatedTarget : e.toElement;
                
                while (reltg.tagName != 'BODY') {
                    if (reltg.id == this.id) {
                        return;
                    }
                    reltg = reltg.parentNode;
                }
                this.style.display='none';
            }
        }
    }
}


function showMenuContainer(element)
{
    if (menuCurrentelement == element) {
        return;
    }
    
    for (var menuContainersCount = 0; menuContainersCount < menuContainers.length; menuContainersCount++) {
        var menuContainer = menuContainers[menuContainersCount];
       
        if ( isParent(menuContainer, element)
            /*menuContainer.parentNode == element.parentNode.parentNode
            || menuContainer.parentNode == element.parentNode.parentNode.parentNode
            || menuContainer.parentNode == element.parentNode.parentNode.parentNode.parentNode
            || menuContainer.parentNode == element.parentNode.parentNode.parentNode.parentNode.parentNode
            || menuContainer.parentNode == element.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode
            || menuContainer.parentNode == element.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode
            || menuContainer.parentNode == element.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode
            || menuContainer.parentNode == element.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode
            || menuContainer.parentNode == element.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode
            || menuContainer.parentNode == element.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode*/
            ) {               
                menuContainer.style.display = 'block';
        } else {
            menuContainer.style.display = 'none';
        }
    }  
    
    menuCurrentelement = element;
}

function hideMenuContainer()
{
    for (var menuContainersCount = 0; menuContainersCount < menuContainers.length; menuContainersCount++) {
        var menuContainer = menuContainers[menuContainersCount];
       
        menuContainer.style.display = 'none';
    }  
}

function isParent(element, container) {
    if (container.parentNode) {
        if (element.parentNode == container.parentNode) {
            if (container.parentNode.className.indexOf('mod_menue_ul') == -1) {
                return true;
            }
        }
        return isParent(element, container.parentNode);
    } else {
        return false;
    }
}