var timeoutId = null;

function showTooltip(tt_elemId, link_elemId) {
	timeoutId = setTimeout("showIt('" +tt_elemId +"','" +link_elemId +"')",500);
}

function showIt(tt_elemId, link_elemId) {
	var myTTElem = document.getElementById(tt_elemId);
	var myLinkElem = document.getElementById(link_elemId);
	
	// hide all other
	var allDivs = document.getElementsByTagName('div');
	for(i in allDivs){
		
		if(allDivs[i].id && allDivs[i].id.indexOf('tt_') > -1) {
			hideTooltip(allDivs[i].id);
		}
	}
	
	elemPos = findPosition(myLinkElem);
	setPosition(myTTElem, elemPos);
	new Effect.BlindDown(myTTElem, {duration:0.25}) , 10;

}

function hideTooltip(tt_elemId) {
	var myTTElem = document.getElementById(tt_elemId);
	myTTElem.style.display = 'none';
	clearTimeout(timeoutId);
}


function findPosition( myLinkElem ) {
  if( myLinkElem.offsetParent ) {
    for( var posX = 0, posY = 0; myLinkElem.offsetParent; myLinkElem = myLinkElem.offsetParent ) {
      posX += myLinkElem.offsetLeft;
      posY += myLinkElem.offsetTop;
    }
    return [ posX, posY ];
  } else {
    return [ myLinkElem.x, myLinkElem.y ];
  }
}

function setPosition (myTTElem, elemPos) {
	mx = elemPos[0];
    my = elemPos[1];
    
    myTTElem.style.left = (mx+15) + 'px';
    myTTElem.style.top = (my+17) + 'px';

}