/************************************************************************************************* 

Used for DropDown Menu's on microsite enabled websites
Added:	 	28 March 2006
Developer:	Andrew F, Mark B

**************************************************************************************************/

// Holds the timer so you can delay hiding of menu and clear them.
var menuTimer;

function PUinitMenu() {
    var menu = document.getElementById('menu');
    if (menu) {
        var dts = menu.getElementsByTagName('dt');
        for (var i = 0; i<dts.length; i++) {
            if (dts[i]){
                PUaddEvent(dts[i], 'mouseover', PUmenuMouseOver);
            }
        }
        PUaddEvent(menu, 'mouseover', PUmenuEnter);
        PUaddEvent(menu, 'mouseout', PUmenuLeave);
    }
}

/************************************************************************************************* 

Mouse Over hover event - Shows the sub menu of hovered menu item, used for editor menus.
Added:	 	30 April 2008
Developer:	Mark B

**************************************************************************************************/
function PUmenuMouseOver() {
    
   PUhideSubMenus();
    // get's the element after current element - looking for next <dd>
    if (this.nextSibling)
       var elm = this.nextSibling;
    if(elm.nextSibling)
       elm = elm.nextSibling;
    if (elm) {
       // show dd
       elm.style.display = "block";
    }
}

function PUhideSubMenus() {
    var menu = document.getElementById('menu');
    // Hide all sub menu items
    var dds = menu.getElementsByTagName('dd');
    for (var i = 0; i<dds.length; i++) {
        if (dds[i]) {
            dds[i].style.display = "none";
        }
    }
}

function PUmenuEnter() {
   window.clearTimeout(menuTimer);
}
function PUmenuLeave() {
   menuTimer = window.setTimeout("PUhideSubMenus();", 500);
}

// cross-browser event listener in instance0.js
PUaddEvent(window, 'load', PUinitMenu);


