var currX = 0;
var currY = 0;

var IE = document.all?true:false
var ns = (navigator.appName.indexOf("Netscape") != -1);

var tooltipDivs = new Array();
var visibleDivs = new Array();

var blah = false;

function getMouseXY(e) {
  if (IE) { // grab the x-y pos.s if browser is IE
    currX = event.clientX + document.body.scrollLeft
    currY = event.clientY + document.body.scrollTop
  } else {  // grab the x-y pos.s if browser is NS
    currX = e.pageX
    currY = e.pageY
  }  
  // catch possible negative values in NS4
  if (currX < 0){currX = 0}
  if (currY < 0){currY = 0}  

	for(var i=0; i<visibleDivs.length; i++) {
		document.getElementById(visibleDivs[i]).style.left = ((currX*1)+15) + 'px';	
		document.getElementById(visibleDivs[i]).style.top = ((currY*1)+15) + 'px';	
	}
  return true
}


function getXY(evnt) {
	currX=ns?evnt.pageX:w.opera?event.x:event.x+d.body.scrollLeft;
	currY=ns?evnt.pageY:w.opera?event.y:event.y+d.body.scrollTop;
	for(var i=0; i<visibleDivs.length; i++) {
		document.getElementById(visibleDivs[i]).style.left = ((currX*1)+15) + 'px';	
		document.getElementById(visibleDivs[i]).style.top = ((currY*1)+15) + 'px';	
	}
}

function registerTooltips() {
	for(var i=0; i<registerTooltips.arguments.length; ++i) {
		tooltipDivs.push(registerTooltips.arguments[i]);	
	}
}

function showTooltip(id) {
	document.getElementById(id).style.display = 'block';
	document.getElementById(id).style.position = 'absolute';
	var tmpArray = new Array();
	for(var i=0; i<visibleDivs.length; i++) {
		if(visibleDivs[i] == id) {
			// don't add it twice
			return(true);
		}

	}
	visibleDivs.push(id);
	return(true);
}

function hideTooltips() {
	for(var i=0; i<visibleDivs.length; i++) {
		document.getElementById(visibleDivs[i]).style.display = 'none';
	}
	visibleDivs = new Array();
}

document.onmousemove=getMouseXY;
