﻿// Copyright 2006-2007 javascript-array.com

var timeout = 500;
var closetimer = 0;
var ddmenuitem = 0;
var _currentid = "";
var _change = false;

function mstart(element, children) {
    
    _change = element.id != _currentid ? true : false;
    _currentid = element.id;
    if (_change && children == true) {
        pausemenupage();
    } 
}

function mreset(element) {
    _change = "";
    resetmenupage();
}

//override in parent
function pausemenupage() {
}
//override in parent
function resetmenupage() {
}

// open hidden layer
function mopen(id) {
 
   
    // cancel close timer
    mcancelclosetime();

    // close old layer
    if (ddmenuitem) ddmenuitem.style.visibility = 'hidden';

    // get new layer and show it
    ddmenuitem = document.getElementById(id);
    ddmenuitem.style.visibility = 'visible';

}
// close showed layer
function mclose() {
    if (ddmenuitem) ddmenuitem.style.visibility = 'hidden';
}

// go close timer
function mclosetime() {
    closetimer = window.setTimeout(mclose, timeout); 
}

// cancel close timer
function mcancelclosetime() {
    if (closetimer) {
        window.clearTimeout(closetimer);
        closetimer = null; 
    } 

}

// close layer when click-out
document.onclick = mclose;

