function showHint(obj, text) {
	if (text && document.body) {
		var pos=getElementPosition(obj);
		if (pos.y>30)
		{
			if (pos.x<(document.body.clientWidth/2)) {
				var d = document.getElementById('hintDiv1');
				var txtTD = document.getElementById('hintDivText1');
				txtTD.innerHTML = text;
				d.style.left = pos.x + pos.width - 5;
				d.style.top = pos.y - 17 ;
			}
			else {
				var d = document.getElementById('hintDiv2');
				var txtTD = document.getElementById('hintDivText2');
				txtTD.innerHTML = text;
				var w = parseInt(d.offsetWidth);
				d.style.left = pos.x + pos.width - w;
				d.style.top = pos.y - 17 ;
			}
		}
		else
		{
			if (pos.x<(document.body.clientWidth/2)) {
				var d = document.getElementById('hintDiv4');
				var txtTD = document.getElementById('hintDivText4');
				txtTD.innerHTML = text;
				d.style.left = pos.x;
				d.style.top = pos.y + pos.height - 2;
			}
			else
			{
				var d = document.getElementById('hintDiv3');
				var txtTD = document.getElementById('hintDivText3');
				txtTD.innerHTML = text;
				var w = parseInt(d.offsetWidth);
				d.style.left = pos.x - w + pos.width;
				d.style.top = pos.y + pos.height - 2;
			}
		}
		d.style.visibility = 'visible';
	}
}

function hideHint(){
	var obj = document.getElementById('hintDiv1');
	if (!obj) return;
	obj.style.visibility='hidden';
	obj = document.getElementById('hintDiv2');
	obj.style.visibility='hidden';
	obj = document.getElementById('hintDiv3');
	obj.style.visibility='hidden';
	obj = document.getElementById('hintDiv4');
	obj.style.visibility='hidden';
}

function getElementPosition(e) {//page coordinates
	var pos=new Object();
	pos.x = pos.y = 0;
	if (e.style.position=='absolute' && e.style.posWidth>=0) {
		pos.width = parseInt(e.style.posWidth);
		pos.height = parseInt(e.style.posHeight);
	}
	else {
		pos.width = parseInt(e.offsetWidth);
		pos.height = parseInt(e.offsetHeight);
	}

	while (e) {
		if (e.style.position=='absolute' && e.style.posLeft>=0) {
			pos.x += parseInt(e.style.posLeft);
			pos.y += parseInt(e.style.posTop);
		}
		else {
			pos.x += parseInt(e.offsetLeft);
			pos.y += parseInt(e.offsetTop);
		}
		e = e.offsetParent;
	} 
	return pos;
}

function isPositionInElement(x, y, e, eX ,eY) {//page coordinates
	if (eX==null || eY==null) {
		var pos=getElementPosition(e);
		eX=pos.x;
		eY=pos.y;
	}
	return (x>eX && x<eX+e.offsetWidth && y>eY && y<eY+e.offsetHeight);
}