/* 
   multi-level menus
   Copyright 2008 Vilocity Interactive, Inc. All Rights Reserved.
*/
var menuon = new Array();
var timeouts = new Array();

function clearAllTimeouts(id) {
  var ids = menuon[id];
  var parts = ids.split(",");
  for(var i = 0; i < parts.length; i++) {
    toid = parts[i];
    clearTimeout(timeouts[toid]);
    delete timeouts[toid];
  }
}

function menuHide(id) {
  if(menuon[id] == undefined) return;
  var block = document.getElementById("mb"+id);
  if(block != undefined) {
	  document.getElementById("mb"+id).style.display = "none";
	  delete menuon[id];
	  delete timeouts[id]; 
  }
}

function hideMenu(id,exclude) {
  if(id == undefined) return;
  if(menuon[id] == undefined) return;

  var ids = menuon[id];
  var parts = ids.split(",");
  var ctr = 1
  for(var i = 0; i < parts.length; i++) {
    toid = parts[i];
    if(toid != exclude) {
      timeouts[toid] = setTimeout("menuHide('" + toid + "');",100*ctr);
      ctr++;
    } else {
      break;
    }
  }
}

function showsubmenu(id,orient,callid,padAdj) {
  if(timeouts[id] != undefined) clearAllTimeouts(id);
  if(menuon[id] != undefined) return;

  var block = document.getElementById("mb"+id);
  var menu = document.getElementById("mi"+id);
  //var caller = document.getElementById("mb"+callid);
  var adjleft = 0;
  var adjtop = 0;
  var adjwidth = 0;
  var adjheight = 0;

  if(block == undefined) 
	return;  

  /*
  if(caller != undefined) {
    adjleft = caller.offsetLeft;
    adjtop = caller.offsetTop;
    adjwidth = caller.offsetWidth;
    adjheight = caller.offsetHeight;
  }
  */

  switch(orient) {
    case 0:
      block.style.left = menu.offsetLeft + adjleft;
      block.style.top = menu.offsetTop + menu.offsetHeight + padAdj + adjtop + 95;
      break;
    case 1:
      block.style.left = menu.offsetLeft + menu.offsetWidth + padAdj + adjleft;
      block.style.top = menu.offsetTop + adjtop;
      break;
  }
  
  block.style.display = "block";
  menuon[id] = id+","+menuon[callid];
}
