var timeOutId = null;
var hideMenu = null;

function menuOver(m, r)
{
  if (!r) r = false;
  if (timeOutId) clearTimeout(timeOutId);
  if (hideMenu) hideChild(hideMenu);
  showChild(m, r);
}

function menuOut(m)
{
  hideMenu = m;
  timeOutId = window.setTimeout("hideChild(hideMenu)", 50);
}

function getLeft(m)
{
  if (m != document.body) 
    return getLeft(m.offsetParent) + m.offsetLeft
  else
    return m.offsetLeft;
}

function getTop(m)
{
  if (m != document.body) 
    return getTop(m.offsetParent) + m.offsetTop
  else
    return m.offsetLeft;
}

function showChild(mm, r)
{
  var dl = 1, dr = 111;
  if (navigator.appName.indexOf("Opera") != -1)
  {
    dl = 1;
    dr = 115;
  }
  var m = document.getElementById("menu"+mm.id);
  if (m)
  {
    m.style.zIndex = 100;
    m.style.top = getTop(mm)+mm.offsetHeight-22;
    if (!r)
      m.style.left = getLeft(mm)-dl
    else
    {
      m.style.left = getLeft(mm)+mm.offsetWidth-dr;
    }
    m.style.display = "";
  }
}

function hideChild(mm)
{
  var m = document.getElementById("menu"+mm.id);
  if (m)
  {
    m.style.zIndex = 0;
    m.style.display = "none";
  }
}

function hideChild2(id)
{
  if (!(document.getElementById('menu'+id).contains(event.toElement) ||
    event.toElement == document.getElementById(id)))
    hideChild(document.getElementById(id));
}
