var menuheight = 19;
var delay = 1700;
var fadespeed = 2;
var speed = 10;
var swapid;
var activemenu;

// used to show the menu below whatever we're clicking on
function showMenu(linkobj) {
  window.clearTimeout(swapid);
  if (activemenu) {
    document.getElementById("menu_" + activemenu.id).style.display = 'none';
    activemenu.className = "menu";
  }
  activemenu = linkobj;
  linkobj.className = "hover";
  cleft = findLeft(linkobj);
  ctop = findTop(linkobj);
  ctop += menuheight;
  menuobj = document.getElementById("menu_" + linkobj.id);
  menuobj.style.position = "absolute";
  menuobj.style.pixelLeft = cleft;
  menuobj.style.left = cleft + 'px';
  menuobj.style.pixelTop = ctop;
  menuobj.style.top = ctop + 'px';
  setOpacity(menuobj, 90);
  menuobj.style.display='block';
}

function findLeft(obj) {
  var curleft = curtop = 0;
  if (obj.offsetParent) {
    curleft = obj.offsetLeft
    while (obj = obj.offsetParent) {
      curleft += obj.offsetLeft
    }
  }
  return (curleft);
}

function findTop(obj) {
  var curleft = curtop = 0;
  if (obj.offsetParent) {
    curtop = obj.offsetTop
    while (obj = obj.offsetParent) {
      curtop += obj.offsetTop
    }
  }
  return (curtop);
}

function setOpacity(obj, opacity) {
  opacity = (opacity == 100)?99.999:opacity;
  // IE/Win
  obj.style.filter = "alpha(opacity:"+opacity+")";
  // Safari<1.2, Konqueror
  obj.style.KHTMLOpacity = opacity/100;
  // Older Mozilla and Firefox
  obj.style.MozOpacity = opacity/100;
  // Safari 1.2, newer Firefox and Mozilla, CSS3
  obj.style.opacity = opacity/100;
}

function fadeOut(objId, opacity) {
//	alert ('fade called ' + opacity);
  window.clearTimeout(swapid);
  if (document.getElementById) {
    obj = document.getElementById(objId);
    if (opacity > 0) {
      setOpacity(obj, opacity);
      opacity -= fadespeed;
      swapid = window.setTimeout("fadeOut('" + objId + "',"+opacity+")", speed);
    }
    else {
      setOpacity(obj, 0);
      obj.style.display = 'none';
      activemenu.className = "menu";
      // also change the heading back to className=Menu;
    }
  }
}

function cancelFade(obj) {
  window.clearTimeout(swapid);
  setOpacity(obj, 90);
}

