var allowfadein = new Array();
var allowfadeout = new Array();
var lastmenu;
var timeouts = new Array();

function debuginfo(t) {
  window.status = t;
}
function OpenMenu(id) {
  if(lastmenu) {
    DeleteClosure(lastmenu);
    allowfadein[lastmenu]=false;
    allowfadeout[lastmenu]=false;
    CloseMenu(lastmenu);
  }
  allowfadeout[id] = false;
  var sm = document.getElementById('sm'+id);
  var mh = document.getElementById('mh'+id);
  
  var xpos = GetLeftOffset(document.getElementById('m'+id));
  var ypos = GetTopOffset(document.getElementById('m'+id));
  
  SetTransparency(mh, 0);
  mh.style.display = 'block';
  
  var newy = ypos;
  var yposoff = ypos-5;
  //var yposoff = -5;
  
  if(!(document.all && !window.opera)) {
    newy = ypos+5; // Mozilla, Opera BUG
    yposoff = ypos+(15 - mh.offsetHeight);
  }
  if(navigator.userAgent.indexOf('Safari')!=-1) {
    newy = ypos; // Safari acts like IE
    yposoff = ypos+1;
  }

  ypos = newy;
  
  mh.style.left = xpos+'px';
  mh.style.top = yposoff+'px';
  
  xpos-=5;
  ypos-=5;
  
  SetTransparency(sm, 0);
  sm.style.display = 'block';
  
  if((mh.offsetWidth+10)>sm.offsetWidth) sm.style.width = (mh.offsetWidth+10)+'px';
  
  sm.style.left = xpos+'px';
  sm.style.top = ypos+'px';
  
  lastmenu = id;
  allowfadein[id] = true;
  
  for(i=0; i<10; i++) {
    setTimeout("if(allowfadein["+id+"]) SetTransparency(document.getElementById('sm"+id+"'), "+i+"*10)", (parseInt((i*25))));
    setTimeout("if(allowfadein["+id+"]) SetTransparency(document.getElementById('mh"+id+"'), "+i+"*10)", (parseInt((i*25))));
  } 
  i++;
  //setTimeout("if(allowfadein["+id+"]) SetTransparency(document.getElementById('sm"+id+"'), 100)", (parseInt((i*25))));
  //setTimeout("if(allowfadein["+id+"]) SetTransparency(document.getElementById('mh"+id+"'), 100)", (parseInt((i*25))));
  
  timeouts[id] = setTimeout('CloseMenu('+id+')', 1000);
}

function DeleteClosure(id) {
  clearTimeout(timeouts[id]);
}

function DelayClosure(id) {
  clearTimeout(timeouts[id]);
  timeouts[id] = setTimeout('CloseMenu('+id+')', 1000);
}

function CloseMenu(id) {
  var sm = document.getElementById('sm'+id);
  var mh = document.getElementById('mh'+id);
  
  allowfadeout[id] = true;
  
  for(i=0; i<10; i++) {
    setTimeout("if(allowfadeout["+id+"]) SetTransparency(document.getElementById('sm"+id+"'), 100-"+i+"*10)", (parseInt((i*25))));
    setTimeout("if(allowfadeout["+id+"]) SetTransparency(document.getElementById('mh"+id+"'), 100-"+i+"*10)", (parseInt((i*25))));
  } 
  i++;
  setTimeout("if(allowfadeout["+id+"]) SetTransparency(document.getElementById('sm"+id+"'), 0)", (parseInt((i*25))));
  setTimeout("if(allowfadeout["+id+"]) SetTransparency(document.getElementById('mh"+id+"'), 0)", (parseInt((i*25))));
  setTimeout("if(allowfadeout["+id+"]) document.getElementById('sm"+id+"').style.display = 'none'", (parseInt((i*25))));
  setTimeout("if(allowfadeout["+id+"]) document.getElementById('mh"+id+"').style.display = 'none'", (parseInt((i*25))));
  
}

function HoverSubMenuItem(obj, id) { obj.className = 'submenuitemhv'; }
function UnHoverSubMenuItem(obj, id) { obj.className = 'submenuitem'; }
