﻿var timeout         = 200;
var closetimer		= 0;
var ddmenuitem      = 0;


 	
// 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);
    if(ddmenuitem != null) {
        ddmenuitem.style.visibility = 'visible';
        if(YAHOO.env.ua.ie <= 6 && YAHOO.env.ua.ie > 0){
            var my_iframe = document.getElementById("hidden_menu_frame");
            if(my_iframe != null){
                document.body.removeChild(my_iframe)
            }
            my_iframe = document.createElement('iframe'); 
            my_iframe.style.position = 'absolute'; 
            my_iframe.style.zIndex = 1; 
            my_iframe.setAttribute('id', "hidden_menu_frame"); 
            document.body.appendChild(my_iframe); 
                
            var reg = YAHOO.util.Dom.getRegion(ddmenuitem);            
            my_iframe.style.display = 'block'; 
            my_iframe.style.top= (reg.top + 1) + 'px' ; //one less than the value given for theDiv
            my_iframe.style.left = (reg.left - 2) + 'px'; //one less than the value given for theDiv
            my_iframe.style.height = (reg.bottom - reg.top - 3) + 'px';
            my_iframe.style.width = (reg.right - reg.left) + 'px';
            ddmenuitem.style.top = "35px";
        }else{
            ddmenuitem.style.filter = 'alpha(opacity=90)';
            ddmenuitem.style.opacity = '0.8';
        }
    }else{
        hideFrame();
    }
}
// close showed layer
function mclose()
{
    if(ddmenuitem) {
         ddmenuitem.style.visibility = 'hidden';
         hideFrame();
    }
}

function hideFrame()
{
    if(YAHOO.env.ua.ie <= 6 && YAHOO.env.ua.ie > 0){
         var my_iframe = document.getElementById("hidden_menu_frame");
         if(my_iframe != null){
            document.body.removeChild(my_iframe)
         }
     }
}

// 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;