/*

Handles drop-down and fly-out menus

*/

var timeout = 250;
var closetimer = 0;
var ddmenuitem = 0;

var flyoutCloseTimer = 0;
var flyoutItem = 0;

var secondFlyoutCloseTimer = 0;
var secondFlyoutItem = 0;

//document.onclick = jsddm_close;

function jsddm_open() {
    jQuery('#nav ul').find('.treenode:visible').css('display', 'none');
    jsddm_canceltimer();
    jsddm_close();
    ddmenuitem = jQuery(this).children('.treenode').css('display', 'block');
//    HideInputs();
}

function jsddm_close() {

    if (ddmenuitem) {
        ddmenuitem.css('display', 'none');
//        ShowInputs();
    }

}

function jsddm_timer() {
    closetimer = window.setTimeout(jsddm_close, timeout);
}

function jsddm_canceltimer() {
    if (closetimer) {
        window.clearTimeout(closetimer);
        closetimer = null;
    }

}

/* 

Flyouts
	
*/

function flyoutOpen() {
    flyoutCancelTimer();
    flyoutClose();
    flyoutItem = jQuery(this).children('ul').css('display', 'block');
    //HideInputs();	
}

function flyoutClose() {

    if (flyoutItem) {

        flyoutItem.css('display', 'none');
        //ShowInputs();

    }

}

function flyoutTimer() {
    flyoutCloseTimer = window.setTimeout(flyoutClose, timeout);
}

function flyoutCancelTimer() {

    if (flyoutCloseTimer) {
        window.clearTimeout(flyoutCloseTimer);
        flyoutCloseTimer = null;
    }

}

/* 

Second-level Flyouts
	
*/

function secondFlyoutOpen() {
    secondFlyoutCancelTimer();
    secondFlyoutClose();
    secondFlyoutItem = jQuery(this).children('ul').css('display', 'block');
    //HideInputs();	
}

function secondFlyoutClose() {

    if (secondFlyoutItem) {

        secondFlyoutItem.css('display', 'none');
        //ShowInputs();

    }

}

function secondFlyoutTimer() {
    secondFlyoutCloseTimer = window.setTimeout(secondFlyoutClose, timeout);
}

function secondFlyoutCancelTimer() {

    if (secondFlyoutCloseTimer) {
        window.clearTimeout(secondFlyoutCloseTimer);
        secondFlyoutCloseTimer = null;
    }

}
