﻿function ShowTooltip(tooltipControl, tipText, additionalLeftOffset, additionalTopOffset) {
    // Get parent control location so we can show the tooltip next to it
    var id = "tooltipdiv";
    var objRef, divContainer = (document.all ? document.all[id] : document.getElementById(id));

    if (divContainer == null) {
        var body = document.getElementsByTagName("BODY")[0];
        divContainer = document.createElement("DIV");
        divContainer.id = id;
        body.appendChild(divContainer);
    }

    var left = tooltipControl.offsetLeft;
    var top = tooltipControl.offsetTop;
    objRef = divContainer.style;
    objRef.float = 'right';
    objRef.zIndex = 1;
    var par = tooltipControl.parentNode;
    while ((par != undefined) && (par != null)) {
        if ((par.tagName == document.body) || (par.tagName == document.documentElement))
            break;
        if ((par.offsetLeft != undefined) && (par.offsetLeft != null))
            left += par.offsetLeft;
        if ((par.offsetTop != undefined) && (par.offsetTop != null))
            top += par.offsetTop;
        par = par.offsetParent;
    }
    if (additionalLeftOffset == null) {
        additionalLeftOffset = 0;
    }

    left += tooltipControl.offsetWidth + 10 + additionalLeftOffset;

    if (additionalTopOffset == null) {
        additionalTopOffset = 0;
    }

    top += additionalTopOffset;

    var dwidth = document.documentElement.clientWidth;
    if (left + 225 > dwidth) {
        objRef.left = (left - tooltipControl.offsetLeft - tooltipControl.offsetWidth - 10 - 225).toString() + "px";
        divContainer.innerHTML = "<table cellspacing='0' cellpadding='0' class='TooltipTable'><tr><td class='TooltipTd'>" +
                tipText + "</td><td style='vertical-align: top'></td></tr></table>";
    }
    else {
        objRef.left = left.toString() + "px";
        divContainer.innerHTML = "<table cellspacing='0' cellpadding='0' class='TooltipTable'><tr><td class='TooltipTd'>" + tipText + "</td></tr></table>";
    }
    objRef.top = top.toString() + "px";
    objRef.position = 'absolute';
    objRef.visibility = 'visible';
    return divContainer;
}

function HideTooltips() {
    var id = "tooltipdiv";
    divContainer = (document.all ? document.all[id] : document.getElementById(id));
    if ((divContainer != null) && (divContainer != undefined)) {
        divContainer.style.visibility = "hidden";
        divContainer.style.left = 0;
    }
}

