﻿// JScript File
//<img src="images/info.gif" border="0" onmouseout="hideddrivetip()" onmouseover="ddrivetip('<font class=\'exampleText\'>exampleText</font>', 300)" alt="" />
//<a href="javascript:;" onmouseout="hideddrivetip()" onmouseover="ddrivetip('exampleText', 300)">More Info</a>

var offsetfromcursorX=12 //Customize x offset of tooltip
var offsetfromcursorY=10 //Customize y offset of tooltip

var offsetdivfrompointerX=10 //Customize x offset of tooltip DIV relative to pointer image
var offsetdivfrompointerY=14 //Customize y offset of tooltip DIV relative to pointer image. Tip: Set it to (height_of_pointer_image-1).

//document.write('<div id="dhtmltooltip"></div>') //write out tooltip DIV
//document.write('<img id="dhtmlpointer" src="../images/pointer.gif">') //write out pointer image

var ie=document.all
var ns6=document.getElementById && !document.all
var enabletip=false
if (ie||ns6)
var tipobj=document.all? document.all["dhtmltooltip"] : document.getElementById? document.getElementById("dhtmltooltip") : ""

//var pointerobj=document.all? document.all["dhtmlpointer"] : document.getElementById? document.getElementById("dhtmlpointer") : ""
//pointerobj=""

function ietruebody(){
return (document.compatMode && document.compatMode!="BackCompat")? document.documentElement : document.body
}

var doPositiontip = true;
var curX;
var curY;

function ddrivetip(thetext, thewidth, thecolor, doP, cX, cY){
//alert(thetext);
doPositiontip = doP;
//alert(doPositiontip);
curX=cX;
curY=cY;
//alert(curX);
if (ns6||ie){
if (typeof thewidth!="undefined") tipobj.style.width=thewidth+"px"
if (typeof thecolor!="undefined" && thecolor!="") tipobj.style.backgroundColor=thecolor
tipobj.innerHTML=thetext
enabletip=true
//alert(enabletip);
return false
}
}

function positiontip(e){
if (enabletip){
var nondefaultpos=false
//alert(doPositiontip);
if(doPositiontip)
{
curX=(ns6)?e.pageX : event.clientX+ietruebody().scrollLeft;
curY=(ns6)?e.pageY : event.clientY+ietruebody().scrollTop;
}
//Find out how close the mouse is to the corner of the window
var winwidth=ie&&!window.opera? ietruebody().clientWidth : window.innerWidth-20
var winheight=ie&&!window.opera? ietruebody().clientHeight : window.innerHeight-20

var rightedge=ie&&!window.opera? winwidth-event.clientX-offsetfromcursorX : winwidth-e.clientX-offsetfromcursorX
var bottomedge=ie&&!window.opera? winheight-event.clientY-offsetfromcursorY : winheight-e.clientY-offsetfromcursorY

var leftedge=(offsetfromcursorX<0)? offsetfromcursorX*(-1) : -1000

if(doPositiontip)
{
   //if the horizontal distance isn't enough to accomodate the width of the context menu
   if (rightedge<tipobj.offsetWidth){
   //move the horizontal position of the menu to the left by it's width
   tipobj.style.left=curX-tipobj.offsetWidth+"px"
   nondefaultpos=true
   }
   else if (curX<leftedge)
   tipobj.style.left="5px"
   else{
   //position the horizontal position of the menu where the mouse is positioned
   tipobj.style.left=curX+offsetfromcursorX-offsetdivfrompointerX+"px"
   //pointerobj.style.left=curX+offsetfromcursorX+"px"
   }

   //same concept with the vertical position
   if (bottomedge<tipobj.offsetHeight){
   tipobj.style.top=curY-tipobj.offsetHeight-offsetfromcursorY+"px"
   nondefaultpos=true
   }
   else{
   tipobj.style.top=curY+offsetfromcursorY+offsetdivfrompointerY+"px"
   //pointerobj.style.top=curY+offsetfromcursorY+"px"
   }
}
else
{
   tipobj.style.left=curX
   nondefaultpos=true
   tipobj.style.top=curY-100
   nondefaultpos=true
}
tipobj.style.visibility="visible"
//if (!nondefaultpos)
//if (false)
//pointerobj.style.visibility="visible"
//else
//pointerobj.style.visibility="hidden"
}
}

function hideddrivetip(){
if (ns6||ie){
enabletip=false
tipobj.style.visibility="hidden"
//pointerobj.style.visibility="hidden"
tipobj.style.left="-1000px"
tipobj.style.backgroundColor=''
tipobj.style.width=''
}
}

document.onmousemove=positiontip

