var defaultMenuWidth="230px";
var q1=new Array();
var q2=new Array();
var q3=new Array();

var ie5=document.all && !window.opera;
var ns6=document.getElementById;
if (ie5||ns6)
  document.write('<div id="popitmenu" onMouseover="clearhidemenu();" onMouseout="dynamichide(event)"></div>');

function iecompattest(){
  return (document.compatMode && document.compatMode.indexOf("CSS")!=-1)? document.documentElement : document.body;
}


function showmenu(e, w, optWidth) {
  if (!document.all&&!document.getElementById)
    return;

  clearhidemenu();
  menuobj = ie5 ? document.all.popitmenu : document.getElementById("popitmenu");
  menuobj.innerHTML = w;
  menuobj.style.width = (typeof optWidth != "undefined") ? optWidth : defaultMenuWidth;
  menuobj.contentwidth = menuobj.offsetWidth;
  menuobj.contentheight = menuobj.offsetHeight;
  menuobj.style.position = "absolute";
  menuobj.style.border = "1px solid red";
  menuobj.style.backgroundColor = "#000";
  menuobj.style.color = "#fff";
  menuobj.style.padding = "2px 5px";
  menuobj.style.zIndex = "100";

	if (ie5) {
		eventX =  event.clientX;
		eventY =  event.clientY;
		offsetX = event.offsetX;
		offsetY = event.offsetY;
	} else {
		eventX =  e.clientX;
		eventY =  e.clientY;
		offsetX = (e.offsetX) ? e.offsetX : 0;
		offsetY = (e.offsetY) ? e.offsetY : 0;
	}

  var rightedge = ie5? iecompattest().clientWidth-eventX : window.innerWidth-eventX;
  var bottomedge = ie5? iecompattest().clientHeight-eventY : window.innerHeight-eventY;

  if (rightedge < menuobj.contentwidth) {
		if (ie5) {
    	menuobj.style.left = iecompattest().scrollLeft+eventX-3-offsetX-menuobj.contentwidth+"px";
		} else {
			menuobj.style.left = window.pageXOffset+eventX-10-offsetX-menuobj.contentwidth+"px";
		}
  } else {
		if (ie5) {
			menuobj.style.left = iecompattest().scrollLeft+eventX+20-offsetX+"px";
		} else {
			menuobj.style.left = window.pageXOffset+eventX+20-offsetX+"px";
		}
  }

  if (bottomedge<menuobj.contentheight) {
		if (ie5) {
			menuobj.style.top = iecompattest().scrollTop+eventY-menuobj.contentheight+16-offsetY+"px";
		} else {
			menuobj.style.top = window.pageYOffset+eventY-menuobj.contentheight-offsetY+"px";
		}
  } else {
		if (ie5) {
			menuobj.style.top = iecompattest().scrollTop+event.clientY-offsetY+"px";
		} else {
			menuobj.style.top = window.pageYOffset+eventY-offsetY+"px";
		}
  }

  menuobj.style.visibility="visible";
	return false;
}


function contains_ns6(a, b) {
  while (b.parentNode)
    if ((b = b.parentNode) == a)
      return true;
  return false;
}

function hidemenu(){
  if (window.menuobj)
    menuobj.style.visibility="hidden";
}

function dynamichide(e){
  if (ie5&&!menuobj.contains(e.toElement))
    hidemenu();
  else if (ns6&&e.currentTarget!= e.relatedTarget&& !contains_ns6(e.currentTarget, e.relatedTarget))
    hidemenu();
}

function delayhidemenu(){
  delayhide=setTimeout("hidemenu()",0);
}

function clearhidemenu(){
  if (window.delayhide)
    clearTimeout(delayhide);
}

if (ie5||ns6)
  document.onclick=hidemenu;