function akf_xstooltip_findPosX(obj) 
{
  var curleft = 0;
  if (obj.offsetParent) 
  {
    while (obj.offsetParent) 
        {
            curleft += obj.offsetLeft
            obj = obj.offsetParent;
        }
    }
    else if (obj.x)
        curleft += obj.x;
    return curleft;
}

function akf_xstooltip_findPosY(obj) 
{
    var curtop = 0;
    if (obj.offsetParent) 
    {
        while (obj.offsetParent) 
        {
            curtop += obj.offsetTop
            obj = obj.offsetParent;
        }
    }
    else if (obj.y)
        curtop += obj.y;
    return curtop;
}

function akf_xstooltip_do_nothing(tooltipId, parentId, keyX, posX, keyY, posY)
{
    // do nothing
}

function akf_xstooltip_showNhide(tooltipId, parentId, keyX, posX, keyY, posY)
{
    akf_xstooltip_show(tooltipId, parentId, keyX, posX, keyY, posY);
    setTimeout("akf_xstooltip_hide(tooltipId)", 3000); // after 3 secs
}

function akf_xstooltip_show(tooltipId, parentId, keyX, posX, keyY, posY)
{
    it = document.getElementById(tooltipId);
    
    if ((it.style.top == '' || it.style.top == 0) &&
        (it.style.left == '' || it.style.left == 0))
    {
        // need to fixate default size (MSIE problem)
        it.style.width = it.offsetWidth + 'px';
        it.style.height = it.offsetHeight + 'px';
        
        img = document.getElementById(parentId); 
    
        // if tooltip is too wide, shift left to be within parent 
        // if (posX + it.offsetWidth > img.offsetWidth)
        //    posX = img.offsetWidth - it.offsetWidth;
        // if (posX < 0 ) posX = 0; 

        if (keyX == "abs") {
            x = posX;
        } else {
            x = akf_xstooltip_findPosX(img) + posX;
        }
        if (keyY == "abs") {
            y = posY;
        } else {
            y = akf_xstooltip_findPosY(img) + posY;
        }

        it.style.top = y + 'px';
        it.style.left = x + 'px';
    }

    it.style.visibility = 'visible'; 
}

function akf_xstooltip_hide(id)
{
    it = document.getElementById(id); 
    it.style.visibility = 'hidden'; 
}

