var navState  = new Array();
var menuState = new Array();
var zindex    = 1;
var timeout   = 125;

/**
* Window Load Event initializes FAQ, resets INPUTs and attaches events.
*
* @return void
*/
document.observe('dom:loaded', function()
{
	lightwindowInit();
	
    var menuNav = $('menuNav').select('div.menuNav');
    for (var i = 0; i < menuNav.length; i++) {
        var name = menuNav[i].id.substr(7);

        navState[name] = false;
        menuState[name] = false;

        $('menu' + name).observe('mouseover', showNav);
        $('menu' + name).observe('mouseout', menuStateHide);
        
        var navLinks = menuNav[i].select('a');
        for (var j = 0; j < navLinks.length; j++) {
            navLinks[j].observe('mouseover', navStateShow);
            navLinks[j].observe('mouseout', navStateHide);
        };
    };
});

function hideNav(name) {
    if (menuState[name] == false && navState[name] == false) {
        $('menuNav' + name).fade({ duration: 0.1, queue: { position: 'end', scope: name } });
    }
};

function showNav(e) {
    var name = this.id.substr(4);

    $('menuNav' + name).clonePosition($('menu' + name), {
        setLeft: true,
        setTop: true,
        setWidth: false,
        setHeight: false,
        offsetLeft: -30,
        offsetTop: 20
    });
    
    menuState[name] = true;
    $('menuNav' + name).style.zIndex = zindex++;
    $('menuNav' + name).appear({ duration: 0.1, queue: { position: 'end', scope: name } });
};

function menuStateHide(e) {
    var name = this.id.substr(4);
    menuState[name] = false;
    setTimeout('hideNav("' + name + '")', timeout);
};

function navStateShow(e) {
    var name = this.parentNode.id.substr(7);
    navState[name] = true;
};


function navStateHide(e) {
    var name = this.parentNode.id.substr(7);
    navState[name] = false;
    setTimeout('hideNav("' + name + '")', timeout);
};