
function bid(id) { return document.getElementById(id); }
function fetch_offset(obj) {
	var left_offset = obj.offsetLeft;
	var top_offset = obj.offsetTop;
	while((obj = obj.offsetParent) != null) {
		left_offset += obj.offsetLeft;
		top_offset += obj.offsetTop;
	}
	return { 'left': left_offset, 'top': top_offset }
}


var menuActive = null;
var menuCount = 0;
var timer = null;
var delay = 150;

function Show(n) {
  obj = bid("menu_bar_"+n);
  menuobj = bid("menu_"+n);
  var pos = fetch_offset(obj);
	var leftpx = pos['left'];
	var toppx = pos['top'] + obj.offsetHeight;
	if ((leftpx + menuobj.offsetWidth) >= document.body.clientWidth && (leftpx + obj.offsetWidth - menuobj.offsetWidth) > 0) {
		leftpx = leftpx + obj.offsetWidth - menuobj.offsetWidth;
	}
	menuobj.style.left = leftpx + 'px';
	menuobj.style.top  = toppx + 'px';
	menuobj.style.position  = "absolute";
  menuobj.style.display = "block";
  menuActive = n;
}

function Hide() {
  for(i=1; i<=menuCount; i++) {
    bid("menu_"+i).style.display = "none";
  }
  menuActive = null;
}

function MOut() {
  timer = setTimeout("Hide()", delay);
}

function MOver(n) {
  clearTimeout(timer);
  timer = null;
  if(n != menuActive) {
    Hide();
    Show(n);
  }
}

