// *********************************************************************************************
// PURPOSE		Shows content at the mouse when hovering over a link.
//
// USE LIKE THIS	href='javascript:js_show_content("div_id", "string")'
//			onMouseover='js_show_content("div_id", "string"); return true;' 
//			onMouseout='js_hide_content("div_id"); return true;'
//
// COPY THIS		href='javascript:js_show_content("js_hover_info", "string")' onMouseover='js_show_content("js_hover_info", "string"); return true;' onMouseout='js_hide_content("js_hover_info"); return true;'
// COPY THIS		<div id='js_hover_info' style='display:none;  position:absolute;  width:400px;  border:solid #000 1px;  background:#cbcbcb;  padding:5px;'>Content goes here...</div>
// *********************************************************************************************
var js_cX = 0;
var js_cY = 0;
var js_rX = 0; 
var js_rY = 0;

if(document.all) { 
   document.onmousemove = js_update_cursor_position_doc_all; 
}
else { 
   document.onmousemove = js_update_cursor_position; 
}



// *********************************************************************************************
// PURPOSE		Shows content at the mouse when hovering over a link.
//
// *********************************************************************************************
function js_show_content(d, content) {
   if(d.length < 1) { 
      return; 
   }
   var dd = document.getElementById(d);
   js_assign_position(dd);
   dd.style.display = "block";
   
   
   dd.innerHTML = content;
}




// *********************************************************************************************
// PURPOSE		Hides the content.
//
// *********************************************************************************************
function js_hide_content(d) {
   if(d.length < 1) { 
      return; 
   }
   document.getElementById(d).style.display = "none";
}




// *********************************************************************************************
//
//
// *********************************************************************************************
function js_update_cursor_position(e) { 
   js_cX = e.pageX;
   js_cY = e.pageY;
}




// *********************************************************************************************
//
//
// *********************************************************************************************
function js_update_cursor_position_doc_all(e) { 
   js_cX = event.clientX;
   js_cY = event.clientY;
}




// *********************************************************************************************
//
//
// *********************************************************************************************
function js_assign_position(d) {
   if(self.pageYOffset) {
      js_rX = self.pageXOffset;
      js_rY = self.pageYOffset;
   }
   else if(document.documentElement && document.documentElement.scrollTop) {
      js_rX = document.documentElement.scrollLeft;
      js_rY = document.documentElement.scrollTop;
   }
   else if(document.body) {
      js_rX = document.body.scrollLeft;
      js_rY = document.body.scrollTop;
   }

   if(document.all) {
      js_cX += js_rX; 
      js_cY += js_rY;
   }

   d.style.left = (js_cX+10) + "px";
   d.style.top = (js_cY+10) + "px";
}




// *********************************************************************************************
//
//
// *********************************************************************************************
function js_reverse_content_display(d) {
   if(d.length < 1) { 
      return; 
   }
   var dd = document.getElementById(d);
   js_assign_position(dd);
   if(dd.style.display == "none") { 
      dd.style.display = "block"; 
   }
   else { 
      dd.style.display = "none"; 
   }
}
