// showDiv function(String text, String capText)
// 2 parameters, 1 optional
// 1st parameter - sting, text to display as body text; can contain html tags
// 2nd parameter -  string,  text to display as caption; OPTIONAL
// hideDiv()
// stickyDiv() - allows user to click on div

document.write('<style>#overDiv {position:absolute; visibility:hide;z-index:1;}</style>')
document.write('<div id="overDiv"></div>')

// set up variables
var mouseX = 0;
var mouseY = 0;
var layerleft = 0;
var layertop = 0;
var layerright = 0;
var layerbottom = 0;


// capture mousemove event to keep track of mouse position
if (document.layers) { document.captureEvents(Event.MOUSEMOVE); }
document.onmousemove = GetMousePosition;

function GetMousePosition(e)
{
  if (document.layers)
  {
    mouseX = e.pageX;
	mouseY = e.pageY;
  }
  else if (document.all)
  {
    mouseX = window.event.clientX + document.body.scrollLeft + document.documentElement.scrollLeft;
	mouseY = window.event.clientY + document.body.scrollTop + document.documentElement.scrollTop;
  }
}

// set up onmouseout event on each layer
var doclayer;
if (document.layers)	{ doclayer = "document."; }
else if (document.all)	{ doclayer = "document.all."; }
//eval(doclayer + "overDiv.onmouseout = LayerOff");

// function for onmouseover event
function showDiv(bodyText, capText)
{
	var yoffset = 38; 
	//prepare DIV tag
	var divText = "";
	if (capText == null){
	divText = "<div class='wxpopoverBox'><div class='wxpopoverBody'>" + bodyText + "</div></div>";
		}else{
	divText = "<div class='wxpopoverBox'><div class='wxpopoverCaption'>" + capText +
	"</div><div class='wxpopoverBody'>" + bodyText + "</div></div>";
	}
	
	if (document.layers)// for netscape
	{
	//write to the DIV tag
	document.overDiv.document.write('<layer>' + divText + '</layer>');
    document.overDiv.document.close();
	   
	// set up layer position
	eval("document.overDiv.moveTo(mouseX + 1, mouseY - yoffset)");
	
	// store layer position variables
	eval("layerleft = document.overDiv.pageX");
	eval("layertop = document.overDiv.pageY");
	eval("layerright = layerleft + document.overDiv.document.width ");
	eval("layerbottom = layertop + document.overDiv.document.height ");
		
	// show new active layer
	eval("document.overDiv.visibility = 'visible' ");
	}
	// for IE
	else if (document.all)
	{
	//write to the DIV tag
	document.getElementById("overDiv").innerHTML = divText;
	
	// set up layer position
	var xpos = mouseX + 1;
	var ypos = mouseY - yoffset;
	eval("document.all.overDiv.style.left = '" + xpos + "px'");
	eval("document.all.overDiv.style.top = '" + ypos + "px'");	
	
	// store layer position variables
	eval("layerleft = document.all.overDiv.offsetLeft");
	eval("layertop = document.all.overDiv.offsetTop");
	eval("layerright = layerleft + document.all.overDiv.offsetWidth ");
	eval("layerbottom = layertop + document.all.overDiv.offsetHeight ");
		
	// show new active layer
	document.all.overDiv.style.visibility = 'visible';
	}
}

// function for onmouseout event on each position circle of image
function stickyDiv()
{
	// need to capture mouse position again for IE
	if (document.all)
	{
		mouseX = window.event.clientX + document.body.scrollLeft + document.documentElement.scrollLeft;
		mouseY = window.event.clientY + document.body.scrollTop + document.documentElement.scrollTop;
		//to fix ie6 rollover bug.
		if (document.documentElement.scrollLeft > 0)
		{
			layerleft = layerleft + document.documentElement.scrollLeft;
			layertop = layertop + document.documentElement.scrollTop;
		}
	}
	// if mouse is over active layer, exit function
	if (mouseX >= layerleft &&
		mouseX <= layerright &&
		mouseY >= layertop &&
		mouseY <= layerbottom)
	{	return; }

	// hide layer 
	if (document.layers)
	{	// for netscape
		eval("document.overDiv.visibility = 'hidden' ");
	}
	else if (document.all)
	{	// for IE
		eval("document.all.overDiv.style.visibility = 'hidden'");
	}
}

// function for onmouseout event on layer
function LayerOff()
{
	// need to capture mouse position again for IE
	if (document.all)
	{
		mouseX = window.event.clientX + document.body.scrollLeft + document.documentElement.scrollLeft;
		mouseY = window.event.clientY + document.body.scrollTop + document.documentElement.scrollTop;
		//to fix ie6 rollover bug.
		if (document.documentElement.scrollLeft > 0)
		{
			layerleft = layerleft + document.documentElement.scrollLeft;
			layertop = layertop + document.documentElement.scrollTop;
		}
	}
	// if mouse is over active layer, exit function
	// this check is required even though this function is called on onmouseout event
	if (mouseX >= layerleft &&
		mouseX <= layerright &&
		mouseY >= layertop &&
		mouseY <= layerbottom)
	{ return; }
	// hide layer
	if (document.layers)
	{ 
		this.visibility = "hidden";
	}
	else if (document.all) 
	{ 
		this.style.visibility = "hidden";
	}
}

function hideDiv()
{
	if (document.layers)
	{	// for netscape
		eval("document.overDiv.visibility = 'hidden' ");
	}
	else if (document.all)
	{	// for IE
		eval("document.all.overDiv.style.visibility = 'hidden'");
	}
}