
/***********************************************
* Show Hint script- © Dynamic Drive (www.dynamicdrive.com)
* This notice MUST stay intact for legal use
* Visit http://www.dynamicdrive.com/ for this script and 100s more.
***********************************************/
		
var horizontal_offset="9px" //horizontal offset of hint box from anchor link

/////No further editting needed

var vertical_offset="0" //horizontal offset of hint box from anchor link. No need to change.
var ie=document.all
var ns6=document.getElementById&&!document.all

// Resurse through DOM adding up element offsets, returns the total offset.
function getposOffset(what, offsettype){
	var totaloffset=(offsettype=="left")? what.offsetLeft : what.offsetTop;
	var parentEl=what.offsetParent;
	while (parentEl!=null){
		totaloffset=(offsettype=="left")? totaloffset+parentEl.offsetLeft : totaloffset+parentEl.offsetTop;
		parentEl=parentEl.offsetParent;
	}
	return totaloffset;
}

// Internet Explorer compatibility test
function iecompattest(){
return (document.compatMode && document.compatMode!="BackCompat")? document.documentElement : document.body
}

// Function to calculate the positioning of an element without it passing outside the browser window.
function clearbrowseredge(obj, whichedge){
	var edgeoffset=(whichedge=="rightedge")? parseInt(horizontal_offset)*-1 : parseInt(vertical_offset)*-1
	if (whichedge=="rightedge"){
		var windowedge=ie && !window.opera? iecompattest().scrollLeft+iecompattest().clientWidth-30 : window.pageXOffset+window.innerWidth-40
		dropmenuobj.contentmeasure=dropmenuobj.offsetWidth
		if (windowedge-dropmenuobj.x < dropmenuobj.contentmeasure)
			edgeoffset=dropmenuobj.contentmeasure+obj.offsetWidth+parseInt(horizontal_offset)
	}
	else{
		var windowedge=ie && !window.opera? iecompattest().scrollTop+iecompattest().clientHeight-15 : window.pageYOffset+window.innerHeight-18
		dropmenuobj.contentmeasure=dropmenuobj.offsetHeight
		if (windowedge-dropmenuobj.y < dropmenuobj.contentmeasure)
			edgeoffset=dropmenuobj.contentmeasure-obj.offsetHeight
	}
	return edgeoffset
}

// Show the hint
// menucontents = Hint Text
// obj = Object to which the Hint should place itself near.
// e = Unknown
// tipwidth = Width of the hint box
function showhint(menucontents, obj, e, tipwidth){
	if ((ie||ns6) && document.getElementById("hintbox")){
		dropmenuobj=document.getElementById("hintbox")
		dropmenuobj.innerHTML=menucontents
		dropmenuobj.style.left=dropmenuobj.style.top="-500px"
		if (tipwidth!=""){
			dropmenuobj.style.width=tipwidth
		}
		dropmenuobj.x=getposOffset(obj, "left")
		dropmenuobj.y=getposOffset(obj, "top")
		dropmenuobj.style.left = (dropmenuobj.x-clearbrowseredge(obj, "rightedge")+obj.offsetWidth)+"px"
		dropmenuobj.style.top = (dropmenuobj.y-clearbrowseredge(obj, "bottomedge"))+"px"
		dropmenuobj.style.visibility="visible"
		obj.onmouseout=hidetip
		// onBlur interfers with onBlur used to inline form validation. See DebtCalculator mk2. JP
		obj.onblur=hidetip
	}
}
function showhintfocus(menucontents, obj, e, tipwidth,target_id){
	if ((ie||ns6) && document.getElementById("hintbox")){
		dropmenuobj=document.getElementById("hintbox")
		dropmenuobj.innerHTML=menucontents
		dropmenuobj.style.left=dropmenuobj.style.top="-500px"
		if (tipwidth!=""){
			dropmenuobj.style.width=tipwidth
		}
		target_obj = document.getElementById(target_id);
		dropmenuobj.x=getposOffset(target_obj, "left")
		dropmenuobj.y=getposOffset(target_obj, "top")
		dropmenuobj.style.left = (dropmenuobj.x-clearbrowseredge(target_obj, "rightedge")+target_obj.offsetWidth)+"px"
		dropmenuobj.style.top = (dropmenuobj.y-clearbrowseredge(target_obj, "bottomedge"))+"px"
		dropmenuobj.style.visibility="visible"
		obj.onmouseout=hidetip
		// onBlur interfers with onBlur used to inline form validation. See DebtCalculator mk2. JP
		obj.onblur=hidetip
	}
}

// Hide the hint div
function hidetip(e){
	dropmenuobj.style.visibility="hidden"
	dropmenuobj.style.left="-500px"
}

// Add a div element to contain the hint to the document DOM.
function createhintbox(){
	var divblock=document.createElement("div")
	divblock.setAttribute("id", "hintbox")
	document.body.appendChild(divblock)
}

// Depending on Browser, add function to create hint box in DOM to onLoad
if (window.addEventListener)
	window.addEventListener("load", createhintbox, false)
else if (window.attachEvent)
	window.attachEvent("onload", createhintbox)
else if (document.getElementById)
	window.onload=createhintbox
