var timeout = 0;
var lefttimeout = 0;
var leftvisibleDiv = '';
var leftactiveLink = '';

var visibleDivs = new Array(2);
visibleDivs[0] = '';
visibleDivs[1] = '';

var activeLinks = new Array(2);
activeLinks[0] = '';
activeLinks[1] = '';


function ShowMenu(linkname, submenuname, level) {
    if (timeout) clearTimeout(timeout);
    DeactiveUnusedDivs(linkname, submenuname, level);

    var link = document.getElementById(linkname);
    if (link != undefined && link.className.indexOf('_active') == -1) {
        link.className = link.className + '_active';
    }

    var submenu = document.getElementById(submenuname);
    if (submenu != undefined) {
        submenu.style.display = 'block';
    }
}

function Show(level) {
    if (timeout) clearTimeout(timeout);

    if (level == 3) {
        Deactivate();
        visibleDivs[0] = '';
        visibleDivs[1] = '';
        activeLinks[0] = '';
        activeLinks[1] = '';
    }
    else if (level == 4) {
        DeactivateLink(activeLinks[1]);
        activeLinks[1] = '';
        DeactivateDiv(visibleDivs[1]);
        visibleDivs[1] = '';
    }
}

function Hide() {
    timeout = setTimeout("Deactivate();", 500);
}

function Deactivate() {
    for (i = 0; i < activeLinks.length; i++) {
        DeactivateLink(activeLinks[i]);
    }

    for (i = visibleDivs.length - 1; i >= 0; i--) {
        DeactivateDiv(visibleDivs[i]);
    }

    DeactivateLink(leftactiveLink);
    DeactivateDiv(leftvisibleDiv);
}

function DeactivateLink(linkname) {
    if (linkname != '') {
        var link = document.getElementById(linkname);
        if (link != undefined) {
            if (link.className.indexOf('firstlevel') != -1) {
                link.className = 'firstlevel';
            }
            else if (link.className.indexOf('secondlevelchildren') != -1) {
                link.className = 'secondlevelchildren';
            }
            else if (link.className.indexOf('secondlevel') != -1) {
                link.className = 'secondlevel';
            }
            else if (link.className.indexOf('thirdlevel') != -1) {
                link.className = 'thirdlevel';
            }
            else if (link.className.indexOf('leftnavigationlink') != -1) {
                link.className = 'leftnavigationlink';
            }
            else if (link.className.indexOf('leftthirdlevel') != -1) {
                link.className = 'leftthirdlevel';
            }
        }
    }
}

function DeactivateDiv(submenuname) {
    if (submenuname != '') {
        var div = document.getElementById(submenuname);
        if (div != undefined) {
            div.style.display = 'none';
        }
    }
}

function DeactiveUnusedDivs(linkname, submenuname, level) {
    if (level == 3) {
        if (activeLinks[0] == linkname) {
            activeLinks[0] = '';
        }
        if (visibleDivs[0] == submenuname) {
            visibleDivs[0] = '';
        }

        Deactivate();

        activeLinks[0] = linkname;
        activeLinks[1] = '';
        visibleDivs[0] = submenuname;
        visibleDivs[1] = '';
    }
    else if (level == 4) {
        var parentlink = activeLinks[0];
        activeLinks[0] = '';
        if (activeLinks[1] == linkname) {
            activeLinks[1] = '';
        }
        var parentdiv = visibleDivs[0];
        visibleDivs[0] = '';
        if (visibleDivs[1] == submenuname) {
            visibleDivs[1] = '';
        }

        Deactivate();

        activeLinks[0] = parentlink;
        activeLinks[1] = linkname;
        visibleDivs[0] = parentdiv;
        visibleDivs[1] = submenuname;
    }
}


function CalculateLeftPosition(e, submenu) {
    if (submenu != undefined) {
        var posx = 0;
        if (e) {
            if (e.pageX) {
                posx = e.pageX;
            }
            else if (e.clientX) {
                posx = e.clientX;
            }
        }
        else {
            posx = window.event.x;
        }

        posx = document.body.clientWidth - posx;
        if (posx < 170) {
            submenu.style.left = -179;
        }
        else {
            submenu.style.left = 176;
        }
    }
}

function ShowLeftMenu(linkname, submenuname) {
    if (lefttimeout) clearTimeout(lefttimeout);
    if (leftvisibleDiv != submenuname) {
        DeactivateDiv(leftvisibleDiv);
        leftvisibleDiv = submenuname;
    }
    if (leftactiveLink != linkname) {
        DeactivateLink(leftactiveLink);
        leftactiveLink = linkname;
    }

    var link = document.getElementById(linkname);
    if (link != undefined && link.className.indexOf('_active') == -1) {
        link.className = link.className + '_active';
    }

    var submenu = document.getElementById(submenuname);
    if (submenu != undefined) {
        submenu.style.display = 'block';
    }
}

function ShowLeft(level) {
    if (lefttimeout) clearTimeout(lefttimeout);
    if (level == 4) {
        Deactivate();
    }
}

function HideLeft() {
    lefttimeout = setTimeout("Deactivate();", 500);
}


