//Edit the informaiton between the quotes below with the path to your image.
var imagePath = "/js/tooltiparrow.gif";
var campo=document.getElementsByTagName('img')[0];
var lastwidth=0;

function addwarning(){

var thealinks = document.all["addToolTip"];

if (!thealinks) { return; }


for(var x=0;x!=thealinks.length;x++){
	if(thealinks[x].id == "addToolTip"){
		thealinks[x].setAttribute("tooltiptext",thealinks[x].title);
		thealinks[x].removeAttribute("title");
		if(lastwidth<thealinks[x].offsetWidth && thealinks[x].tagName=='INPUT'){campo=thealinks[x];lastwidth=thealinks[x].offsetWidth;}
			thealinks[x].onmouseover=function(){ddrivetip(this,this.getAttribute("tooltiptext"),this.getAttribute("ttwidth"));};
			thealinks[x].onmouseout=function(){hideddrivetip();};
			if(thealinks[x].getElementsByTagName('A').length>0){
				thealinks[x].onclick=function(){window.location = this.getElementsByTagName('a')[0].href};
			}
		}
	}
}

var offsetfromcursorX=-7; //Customize x offset of tooltip
var offsetfromcursorY=20; //Customize y offset of tooltip

var offsetdivfrompointerX=13; //Customize x offset of tooltip DIV relative to pointer image
var offsetdivfrompointerY=13; //Customize y offset of tooltip DIV relative to pointer image. Tip: Set it to (height_of_pointer_image-1).

var ie=document.all;
var ns6=document.getElementById && !document.all;
var enabletip=false;
if (ie||ns6) {
	var tipobj=document.all? document.all["theToolTip"] : document.getElementById? document.getElementById("theToolTip") : "";
}

var pointerobj=document.all? document.all["ToolTipPointer"] : document.getElementById? document.getElementById("ToolTipPointer") : "";

function ietruebody(){
return (document.compatMode && document.compatMode!="BackCompat")? document.documentElement : document.body;
}

function ddrivetip(type, thetext, thewidth, thecolor){
if (ns6||ie){
tipo = type=='[object HTMLInputElement]' || type.tagName=='INPUT' ? 0:1;
if (typeof thewidth!=="undefined") {tipobj.style.width= tipo==0 ? 180+"px":thewidth+"px";}
if (typeof thecolor!=="undefined" && thecolor!=="") {tipobj.style.backgroundColor=thecolor;}
tipobj.innerHTML=thetext;
enabletip=true;
return false;
}
}

function positiontip(e){
if (enabletip){
var nondefaultpos=false;
var curX=(ns6)?e.pageX : event.clientX+ietruebody().scrollLeft;
var 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;

//document.body.style.cursor= (ie) ? 'hand':'pointer';

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(tipo==0) {tipobj.getElementsByTagName('p')[0].style.padding="5px"; }
tipobj.className="f11_b";//classe aplicada

pointerobj.width="26";
pointerobj.height="15";


//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+(offsetdivfrompointerX*2)+"px";
pointerobj.style.left=curX+offsetfromcursorX+"px";
}
else if (curX<leftedge)
{tipobj.style.left="5px";}
else{
	if(tipo==1){
		//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";
	}else{
		tipobj.style.left=10+pegarPosicaoX(campo)+campo.offsetWidth+"px";
	}
}

///same concept with the vertical position
if (bottomedge<tipobj.offsetHeight){
	if(tipo==0){
		tipobj.style.top=curY-tipobj.offsetHeight-offsetfromcursorY+"px";
		nondefaultpos=true;
	}else{		
		pointerobj.src="/js/tooltiparrow2.png";
		tipobj.style.top=(1+curY)-tipobj.offsetHeight-offsetfromcursorY+"px";
		pointerobj.style.top=(curY-1)-offsetfromcursorY+"px";
	}
}
else{
	if(tipo==0){
		tipobj.style.top=curY+offsetfromcursorY+offsetdivfrompointerY+"px";
	}else{		
		pointerobj.src="/js/tooltiparrow.png";
		tipobj.style.top=curY+offsetfromcursorY+offsetdivfrompointerY+"px";
		pointerobj.style.top=curY+offsetfromcursorY+"px";
	}	
}
tipobj.style.visibility="visible";
if(tipo==1){
	if (!nondefaultpos) {pointerobj.style.visibility="visible";}
	else{pointerobj.style.visibility="hidden";}
}
}
}

function pegarPosicaoX(objeto)
{
    var atual_left = 0;
    if (objeto.offsetParent) {
        while (objeto.offsetParent) {
            atual_left += objeto.offsetLeft
            objeto = objeto.offsetParent;
        }
    }
    return atual_left;
}



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;
addwarning();