var loaded = false;

var mouseX, mouseY;

function getWinWidth() { 
    var winWd = 0; 

    if (document.documentElement && document.documentElement.clientWidth) 
        winWd = document.documentElement.clientWidth; 
    else if (document.body && document.body.clientWidth) 
        winWd = document.body.clientWidth; 
    else if (document.body && document.body.offsetWidth) 
        winWd = document.body.offsetWidth; // ns6 
    else if (window.innerWidth) 
        winWd = window.innerWidth-18; 

    return winWd;
}

function getWinHeight() { 
    var winHt = 0; 

    if (window.innerHeight) 
        winHt = window.innerHeight-18; 
    else if (document.documentElement && document.documentElement.clientHeight) 
        winHt = document.documentElement.clientHeight; 
    else if (document.body && document.body.clientHeight) 
        winHt = document.body.clientHeight; 

    return winHt;
}

function getScrollY() { 
    var scroll_y = 0; 

    if (document.documentElement && document.documentElement.scrollTop) 
        scroll_y = document.documentElement.scrollTop; 
    else if (document.body && document.body.scrollTop) 
        scroll_y = document.body.scrollTop; 
    else if (window.pageYOffset) 
        scroll_y = window.pageYOffset; 
    else if (window.scrollY) 
        scroll_y = window.scrollY; 
    return scroll_y;
}

function getScrollX() { 
    var scroll_x = 0; 

    if (document.documentElement && document.documentElement.scrollLeft) 
        scroll_x = document.documentElement.scrollLeft; 
    else if (document.body && document.body.scrollLeft) 
        scroll_x = document.body.scrollLeft; 
    else if (window.pageXOffset) 
        scroll_x = window.pageXOffset; 
    else if (window.scrollX) 
        scroll_x = window.scrollX; 

    return scroll_x;
}

function goTooltip(evt,cntnt) {
    if(document.addEventListener) {
        document.addEventListener("mousemove",trackMouse,true); 
    } else if (document.attachEvent) {
        document.attachEvent("onmousemove",trackMouse); 
    } else { 
        if(document.layers && document.captureEvents)
            document.captureEvents(Event.MOUSEMOVE); 
        document.onmousemove = trackMouse; 
    } 
    vert_scroll = getScrollY(); 
    hor_scroll = getScrollX();
    evt = (window.event) ? window.event: evt; 

    if (evt) { 
        mouseX = getMouseX(evt); 
        mouseY = getMouseY(evt); 
    }

    if (document.layers) {
        document.layers.tooltip.document.write(cntnt);
        document.layers.tooltip.document.close();
        document.layers.tooltip.visibility = "show"; 
    } else {
        document.getElementById("tooltip").innerHTML=cntnt;
        document.getElementById("tooltip").style.visibility = "visible"; 
    }
}

function hideTip() {
    if(document.removeEventListener) {
        document.removeEventListener("mousemove",trackMouse,true); 
    } else if (document.detachEvent) {
        document.detachEvent("onmousemove",trackMouse); 
    } else { 
        if (document.layers && document.releaseEvents)
            document.releaseEvents(Event.MOUSEMOVE); document.onmousemove = null; 
    }

    if (document.layers) {
        document.layers.tooltip.visibility = "hidden"; 
        document.layers.tooltip.top = -100;
        document.layers.tooltip.left = -100;
    } else {
        document.getElementById("tooltip").style.visibility = "hidden"; 
        document.getElementById("tooltip").style.top = "-500px"; 
        document.getElementById("tooltip").style.left = "-500px"; 
    }
}

function positionTip() { 
    var tooltipSzelesseg; 
    var tooltipMagassag; 
    var rightCol;

    var tooltip = document.getElementById("tooltip");

    if(document.layers) {
        rightCol = document.layers.RightColumn.left;
        tooltipSzelesseg = document.layers.tooltip.width;
        tooltipMagassag = document.layers.tooltip.height;
    } else {
        rightCol = document.getElementById("RightColumn").offsetLeft;
        tooltipSzelesseg = document.getElementById("tooltip").offsetWidth;
        tooltipMagassag = document.getElementById("tooltip").offsetHeight;
    }

    if (((mouseX + tooltipSzelesseg) > (getWinWidth() + getScrollX())) ||
        (mouseX + tooltipSzelesseg + 10 > rightCol)) {
        eltolasX = -tooltipSzelesseg;
    } else {
        eltolasX = 10; 
    } 

    // eltolasX = -tooltipSzelesseg - 10;

    if((mouseX + eltolasX) <= 0)
        eltolasX = -mouseX;

    if((mouseY+tooltipMagassag) > (getWinHeight()+getScrollY())) {
        eltolasY =- 20; 
    } else { 
        eltolasY = 10; 
    }

    if (document.layers) {
        document.layers.tooltip.top = mouseY + eltolasY;
        document.layers.tooltip.left = mouseX + eltolasX; 
    } else {
        document.getElementById("tooltip").style.top = mouseY+eltolasY + "px";
        document.getElementById("tooltip").style.left = mouseX+eltolasX + "px"; 
    }
}

function trackMouse(evt) { 
    evt = (window.event) ? window.event : evt; 
    if(evt) { 
        mouseX = getMouseX(evt); 
        mouseY = getMouseY(evt); 
    }
    positionTip();
}

function getMouseX(evt) { 
    return (evt.pageX) ? evt.pageX : evt.clientX + getScrollX();
}

function getMouseY(evt) { 
    return (evt.pageY) ? evt.pageY : evt.clientY + getScrollY();
}

if (!document.getElementById && !document.all && !document.layers) 
    event = "";

/*
function doToolTip(evt,txt) { 
    if (!loaded) 
        return; 

    var contentheader=
        '<table cellspacing=\"1\" cellpadding=\"1\" class=\"tooltip\"><tbody><tr><td bgcolor=\"' + 
        border_color + '\"><table width=\"100%\" cellspacing=\"0\"' +
        ' cellpadding=\"0\" border=\"0\"><tbody><tr><td valign=\"top\"' + 
        'bgcolor=\"' + bg_color + '\"><p class=\"tooltip\">';
    var contentfooter=
        '</p></td><td bgcolor=\"' + bg_color + 
        '\">&nbsp;</td></tr></tbody></table></td></tr></tbody></table>';
    var cntnt = contentheader + txt + contentfooter;

    goTooltip(evt, cntnt);
}
*/

function doToolTip(evt, txt) {
    if(!loaded)
        return;

    goTooltip(evt, txt);
}

function enableToolTip() {
    loaded=true;
}

