var OpenMenuTimeOut = 50;
var CloseTimeOut = 1000;
var OpenMenuTimer = null;
var CloseTimer = null;

var menunumber = null;

var currentLayer = null;
var currentitem = null;
var currentLayerNum = 0;
var noClose = 0;

function TimeOpenMenu(menu_number)
{
  CancelTimeCloseMenu();
  menunumber = menu_number;
  OpenMenuTimer = window.setTimeout(OpenMenu, OpenMenuTimeOut);
}

function TimeCloseMenu()
{
  CloseTimer = window.setTimeout(CloseMenu, CloseTimeOut);
  CancelTimeOpenMenu();
}

function OpenMenu()
{
  var smenu = document.getElementById("SPopupMenu"+menunumber);
  var menu  = document.getElementById("PopupMenu"+menunumber);
  var white  = document.getElementById("white_div");

  white.style.visibility='visible';

  if (smenu)
  {
    CancelTimeCloseMenu();
    smenu.style.visibility='visible';

    if (currentLayer && (currentLayerNum != menunumber))
      currentLayer.style.visibility='hidden';

    currentLayer = smenu;
    currentitem = menu;
    currentLayerNum = menunumber;      
  }
  else if (currentLayer)
  {
    currentLayer.style.visibility='hidden';
    currentLayerNum = 0;
    currentitem = null;
    currentLayer = null;
  }
}

function CancelTimeCloseMenu()
{
  if (CloseTimer)
  {
    window.clearTimeout(CloseTimer);
    CloseTimer = null;
  }
}

function CancelTimeOpenMenu()
{
  if (OpenMenuTimer)
  {
    window.clearTimeout(OpenMenuTimer);
    OpenMenuTimer = null;
  }
}

function CloseMenu()
{
  if (currentLayer && noClose!=1)
  {
    currentLayer.style.visibility='hidden';
    currentLayerNum = 0;
    currentLayer = null;
    currentitem = null;
  }
  else
    noClose = 0;

  currentLayer = null;
  currentitem = null;

  var white  = document.getElementById("white_div");
  white.style.visibility='hidden';
}
