function ixTooltip(oElem, sMessage, xOffset, yOffset, handCursor) {
	/* Default offsets if none passed */
	if(typeof(xOffset) == "undefined") {
		var xOffset = -5;
	}
	if(typeof(yOffset) == "undefined") {
		var yOffset = 0;
	}
	
	if(oElem != null) {
		if (handCursor) {
			oElem.style.cursor = "finger";
		} else {
			oElem.style.cursor = "help";
		}
		var curleft = curtop = 0;
		var elemWidth = oElem.offsetWidth;
		if(oElem.offsetParent) {
			do { curleft += oElem.offsetLeft; curtop += oElem.offsetTop; } 
			while (oElem = oElem.offsetParent);
		}
		var elemPos = new Array(curleft, curtop);

		var ixTooltipDiv = document.createElement("DIV");
		ixTooltipDiv.id = "ixTooltip";
		ixTooltipDiv.style.position = "absolute";
		ixTooltipDiv.style.zIndex = "9999";
		ixTooltipDiv.style.visibility = "hidden";
		ixTooltipDiv.innerHTML = "<div id='ixTooltipTop'></div>"
							   + "<div id='ixTooltipMid'>" + sMessage + "</div>"
							   + "<div id='ixTooltipBot'></div>";
		
		document.body.appendChild(ixTooltipDiv);
		var ixTooltipDivHeight = ixTooltipDiv.offsetHeight;
		ixTooltipDiv.style.left = ((elemPos[0] + elemWidth) + xOffset) + "px";
		ixTooltipDiv.style.top = (elemPos[1] - (ixTooltipDivHeight - yOffset)) + "px";
		ixTooltipDiv.style.visibility = "visible";		
	}
	else {
		var ixTooltipDiv = document.getElementById("ixTooltip");
		ixTooltipDiv.parentNode.removeChild(ixTooltipDiv);
	}
}