queued = new Object; visible = new Object;
last = lnk = isMos = isOp = false;
var intr = 300; var nat = 'no-repeat 2px 16px url(res/dot.gif)'; var hvr = '#999 no-repeat 4px 17px url(res/dot3.gif)';
var tpadd=0; var lpadd=-1;

if (navigator.appName == "Netscape") isMos = 1;
if (navigator.userAgent.indexOf("Opera")>-1) isOp = 1;


function cancel_queue() {
	try {clearTimeout(ti);}
	catch (f) {}
}

function popup(ev, pa, ch) {
  if(last && document.getElementById(last).className!="curr") document.getElementById(last).style.background=nat;
  last = "l"+ch;

	lnk = document.getElementById("l"+ch);
	try {
		//visible.style.visibility = 'hidden';
		visible.style.display = 'none';}
	catch(f) {}
	try {
		clearTimeout(ti);
		//queued.style.visibilty = 'hidden';
		queued.style.display = 'none';
	}
	catch(f) {}
	ch = document.getElementById(ch);
	var rr = getDim(pa);
	if (isMos != 1) {
		ch.style.pixelLeft = rr.x + lpadd;
		ch.style.pixelTop = rr.y + pa.offsetHeight + tpadd;
	} else {
		ch.style.left = rr.x + lpadd  + 'px';
		ch.style.top = (rr.y + pa.offsetHeight + tpadd) + 'px';
	}

  if(lnk.className!="curr") lnk.style.background=hvr;
	//ch.style.visibility = 'visible';
  ch.style.display = 'inline';
	visible = ch;
}

function popdown(event, wh, l) {

	if (isMos != 1) {
		if (!wh.contains(event.toElement)) {
			ti = setTimeout(hide, intr);
			queued = wh;
		}
	}	else {
		ti = setTimeout(hide, intr);
		queued = wh;
	}

	function hide() {
	  //wh.style.visibility = 'hidden';
      wh.style.display = 'none';
	  if(lnk.className!="curr") lnk.style.background=nat;
	  last='';
	}
}

function popdown_1(event, pa, ch) {
  ch = document.getElementById(ch);
  
	if (isMos != 1) {
		if (event.toElement != ch && !ch.contains(event.toElement) && !pa.contains(event.toElement)) {
			ti = setTimeout(hide, intr);
			queued = ch;
		}
	}	else {
		if (event.relatedTarget != ch && event.relatedTarget.parentNode != ch && event.relatedTarget.parentNode.parentNode != ch && event.relatedTarget.parentNode != pa)
			ti = setTimeout(hide, intr);
			queued = ch;
	}

	function hide() {
	  //ch.style.visibility = 'hidden';
      ch.style.display = 'none';
	  if(lnk.className!="curr")lnk.style.background=nat;
	  last='';
	}
}

function getDim(el){
for (var lx=0,ly=0;el!=null;
lx+=el.offsetLeft,ly+=el.offsetTop,el=el.offsetParent);
return {x:lx,y:ly}
}

