var ttdiv="<div id='divttdiv' style='position:absolute; display: none;'><div style='position:relative; z-index:1000'><div style='background:transparent url(images/ttip.png) no-repeat 0 0;  width:11px; height:10px; position:absolute; left:1px; top:10px; z-index:10000;'></div><div style='border:1px solid #CFBCBC; background-color:#EBEBEB; padding:10px; position:absolute; left:11px; top:0px;  z-index:1000; font:normal normal 11px/18px Arial, Helvetica, sans-serif'><div id='divttcontent' style='width: 200px;'></div></div></div></div>";
var ttext =new Array();
document.write(ttdiv);


function positionInfo(object) 
{
	  var p_elm = object;
	  this.getElementLeft = getElementLeft;
	  function getElementLeft() 
	  {
			var x = 0;
			var elm;
			if(typeof(p_elm) == "object")
			{
				elm = p_elm;
			}
			else 
			{
				elm = document.getElementById(p_elm);
			}
			while (elm != null) 
			{
				x+= elm.offsetLeft;
				elm = elm.offsetParent;
			}
			return parseInt(x);
	  }

	  this.getElementWidth = getElementWidth;
	  function getElementWidth()
	  {
		 var elm;
		 if(typeof(p_elm) == "object")
		 {
			elm = p_elm;
		 } 
		else 
		{
			elm = document.getElementById(p_elm);
		}
		return parseInt(elm.offsetWidth);
	  }

	  this.getElementRight = getElementRight;
      function getElementRight()
	  {
		return getElementLeft(p_elm) + getElementWidth(p_elm);
	  }

	  this.getElementTop = getElementTop;
      function getElementTop() 
	  {
		 var y = 0;
	 	 var elm;
         if(typeof(p_elm) == "object")
		 {
			elm = p_elm;
		 }
		 else 
		 {
			elm = document.getElementById(p_elm);
		 }
		 while (elm != null) 
		 {
			y+= elm.offsetTop;
			elm = elm.offsetParent;
         }
		 return parseInt(y);
     }

	 this.getElementHeight = getElementHeight;
	 function getElementHeight()
     {
		var elm;
		if(typeof(p_elm) == "object")
		{
			elm = p_elm;
		}
		else 
		{
			elm = document.getElementById(p_elm);
		}
        return parseInt(elm.offsetHeight);
  }

  this.getElementBottom = getElementBottom;
  function getElementBottom()
  {
    return getElementTop(p_elm) + getElementHeight(p_elm);
  }
}


function  hideTooltip()
{
	document.getElementById('divttdiv').style.display='none';
}

function showTooltip(e)
{
	/* Cookie-cutter code to find the source of the event */
	if (typeof e == 'undefined')
	{
		var e = window.event;
	}
	var ctrl;
	if (typeof e.target != 'undefined')
	{
		ctrl = e.target;
	}
	else if(typeof e.srcElement != 'undefined')
	{
		ctrl = e.srcElement;
	}
	else
	{
		return;
	}
 /* End cookie-cutter code */
	for(i=0;i<ttext.length;i++)
	{
		if(ctrl.id==ttext[i][0])
		{
			msg=ttext[i][1];
			break;
		}
	}
	fieldPos = new positionInfo(ctrl);
	var x = fieldPos.getElementRight();
	var y = fieldPos.getElementBottom();
	y-=25;
	document.getElementById('divttdiv').style.left=x+'px';
	document.getElementById('divttdiv').style.top=y+'px';
	document.getElementById('divttcontent').innerHTML=msg;
	document.getElementById('divttdiv').style.display='block';
}
function addEvent(obj, evType, fn){
 if (obj.addEventListener){
    obj.addEventListener(evType, fn, true);
    return true;
 } else if (obj.attachEvent){
    var r = obj.attachEvent("on"+evType, fn);
    return r;
 } else {
    return false;
 }
}

function addToolTiptoCtrl(id,tip)
{
	ctlr=document.getElementById(id);
	addEvent(ctlr,'focus',showToolTip);
	addEvent(ctlr,'blur',hideTooltip);
	var temp=new Array();
	temp=[id,tip];
	ttext[ttext.length]=temp;
}

function showTooltip(ctrl,msg)
{
	fieldPos = new positionInfo(ctrl);
	var x = fieldPos.getElementRight();
	var y = fieldPos.getElementBottom();
	y-=25;
	document.getElementById('divttdiv').style.left=x+'px';
	document.getElementById('divttdiv').style.top=y+'px';
	document.getElementById('divttcontent').innerHTML=msg;
	document.getElementById('divttdiv').style.display='block';
}