﻿// tt = tooltip
// global variables
var intOffset_X_Pointer = 20;
var intOffset_Y_Pointer = 20;
 
// elements for tooltip
var aryToolTipElements = Array('a','span');
 
// browser?
var blnIE = document.all;
var blnNS = document.getElementById && !document.all;
 
// tt-container
document.write('<div id="my_tt"></div><br />');
 
var show_tt = false;
var obj_tt = document.getElementById("my_tt");
 
// get tt-elements
function generateToolTips() {
  for (var x = 0; x != aryToolTipElements.length; x++) {
    var objElement = document.getElementsByTagName(aryToolTipElements[x]);
    if (objElement) {
      for (var y = 0; y != objElement.length; y++) {
        if (objElement[y].className == "tt") {
          objElement[y].setAttribute("tt_content", objElement[y].title);
          objElement[y].removeAttribute("title");
          objElement[y].onmouseover = function() {
            enable_tt(this.getAttribute("tt_content"),true);
          };
          objElement[y].onmouseout = function() { hide_tt(false); };
        }
      }
    }
  }
}
 
function enable_tt(tt_content, blnShow_tt) {
  show_tt = blnShow_tt;
  obj_tt.innerHTML = tt_content;
}
 
function hide_tt(blnShow_tt) {
  show_tt = blnShow_tt;
  obj_tt.style.width = '';
  obj_tt.style.left = "-5000px";
  obj_tt.style.visibility = "hidden";
}
 
function tt_position(objThis) {
  if (show_tt) {
    // get ViewPortheight
    var intcH = document.documentElement.clientHeight;
    // differentiated values for IE and NS
    if (blnIE) {
      intcX = event.clientX; intcY = event.clientY + document.documentElement.scrollTop;
      intsLeft = document.documentElement.scrollLeft;
      var intBottom = intcH - event.clientY - 20;
    } else {
      intcX = objThis.clientX; intcY = objThis.pageY;
      var intBottom = intcH - objThis.clientY - 20;
      intsLeft = 0;
    }
    // set tt-pos
    obj_tt.style.left = intcX - intOffset_X_Pointer + "px";
    if (intBottom < obj_tt.offsetHeight) {
      obj_tt.style.top = intcY - obj_tt.offsetHeight - 10 + "px";
    } else {
      obj_tt.style.top = intcY + intOffset_Y_Pointer + "px";
    }
    obj_tt.style.visibility = "visible";
  }
}
