// Nested Side Bar Menu (Mar 20th, 09)
// By Dynamic Drive: http://www.dynamicdrive.com/style/  
var menuids = ["sidebarmenu1"]; // Enter id(s) of each Side Bar Menu's main UL, separated by commas 
var hideTimer; 
function initsidebarmenu() {  
    //alert("loading..");  
    for (var i = 0; i < menuids.length; i++) {
        var ultags = document.getElementById(menuids[i]).getElementsByTagName("ul");
        for (var t = 0; t < ultags.length; t++) { 
            ultags[t].parentNode.getElementsByTagName("a")[0].className+=" subfolderstyle";
           
            // alert("assigning handlers.."); 
            ultags[t].parentNode.onmouseover = function() {
                    var self = this;
                   
                    // Close other top level menus
                    for (var i = 0; i < menuids.length; i++) { 
                        var topLevelMenu = document.getElementById(menuids[i]);
                        if(self.parentNode.id == menuids[i]) {
                            // Yes we are a top level menu.
                            for (var j = 0; j < menuids.length; j++) { 
                                if(self.parentNode.id != menuids[j]) {
                                    hideSubMenus(menuids[j]);
                                }
                            }
                        }
                    } 
                    // self is an "li" element.
                    // self.parentNode is an "lu" element 
                    // Hide open siblings
                    var siblings = self.parentNode.getElementsByTagName("ul");
                    for(var i = 0; i < siblings.length; i++) {
                        if(siblings[i].parentNode.parentNode != self.parentNode) {
                            // Hide only true siblings, not descendents.
                            continue;
                        }
                        // Hide possibly open sibling
                        if(siblings[i] != self.parentNode) {
                            siblings[i].style.display="none";
                        }
                    } 
                    if(hideTimer) {
                        clearTimeout(hideTimer);
                    }
                    self.getElementsByTagName("ul")[0].style.display="block";
                    self.getElementsByTagName("ul")[0].style.left =
                        self.getElementsByTagName("ul")[0].parentNode.offsetWidth+"px"; 
                };  
            ultags[t].parentNode.onmouseout = function() {
                    // var self = this;
                    // self.getElementsByTagName("ul")[0].style.display="none";
                }; 
            // alert("assigned handlers..");
        }  
        hideAllSubMenus();
    } 
    // alert("done loading..");
} 
function hideAllSubMenusDelayed() {
    if(hideTimer) {
        clearTimeout(hideTimer);
    }
    hideTimer = setTimeout( "hideAllSubMenus()", 700 );
}  
function hideAllSubMenus() {
    for (var i = 0; i < menuids.length; i++) {
        hideSubMenus(menuids[i]);
    }
}  
function hideSubMenus(menuid) {
        var ultags = document.getElementById(menuid).getElementsByTagName("ul");
        for (var t = ultags.length-1; t > -1; t--) { 
                // loop through all sub menus again, and use 
                // "display:none" to hide menus (to prevent possible 
                // page scrollbars
                ultags[t].style.visibility="visible";
                ultags[t].style.display="none";
        }
} 
if (window.addEventListener) {
        window.addEventListener("load", initsidebarmenu, false);
} else if (window.attachEvent) {
        window.attachEvent("onload", initsidebarmenu);
} 