function initXBT() {
	var tagsToCheck=Array('span','a','div','p');
	for(var a =0;a<tagsToCheck.length;a++) {
	var i=0; 
	while(document.getElementsByTagName(tagsToCheck[a])[i]) {
	elem = document.getElementsByTagName(tagsToCheck[a])[i];
	//if(tagsToCheck[a]=='a' && !elem.onfocus) elem.onfocus=new Function("this.blur()");
	if(elem.className=='xbtooltip-parent') elem.title='';
	i++; }
  }
}

(function(window, document, undefined){
    var XBTooltip = function( element, userConf, tooltip) {
      var oldTitle = '';
      var config = {
        id: userConf.id|| undefined,
        className: userConf.className || undefined,
        x: userConf.x || 15,
        y: userConf.y || 15,
        text: userConf.text || undefined
      };
      var over = function(event) {
        tooltip.style.display = "block";
        oldTitle = tooltip.title;
        tooltip.title = "";
      },
      out = function(event) {
        tooltip.style.display = "none";
        tooltip.title = oldTitle;
      },
      move = function(event) {
        event = event ? event : window.event;
        if ( event.pageX == null && event.clientX != null ) {
          var doc = document.documentElement, body = document.body;
          event.pageX = event.clientX + (doc && doc.scrollLeft || body && body.scrollLeft || 0) - (doc && doc.clientLeft || body && body.clientLeft || 0);
          event.pageY = event.clientY + (doc && doc.scrollTop  || body && body.scrollTop  || 0) - (doc && doc.clientTop  || body && body.clientTop  || 0);
        }
        if(event.pageY+config.x<document.body.offsetHeight-tooltip.offsetHeight) tooltip.style.top = (event.pageY+config.y) + "px";
        else {
        	if(event.pageX+config.x<document.body.offsetWidth-tooltip.offsetWidth) tooltip.style.top = (document.body.offsetHeight-tooltip.offsetHeight-5) + "px";
        	else tooltip.style.top = (event.pageY-tooltip.offsetHeight-config.y) + "px"; }
        if(event.pageX+config.x<document.body.offsetWidth-tooltip.offsetWidth) tooltip.style.left = (event.pageX+config.x) + "px";
        else tooltip.style.left = (document.body.offsetWidth-tooltip.offsetWidth-5) + "px";
      }
      if (tooltip === undefined && config.id) {
        tooltip = document.getElementById(config.id);
        if (tooltip) tooltip = tooltip.parentNode.removeChild(tooltip)
      }
      if (tooltip === undefined && config.text) {
        tooltip = document.createElement("div");
        if (config.id) tooltip.id= config.id;
        tooltip.innerHTML = config.text;
      }
      if (config.className) tooltip.className = config.className;
      tooltip = document.body.appendChild(tooltip);
      tooltip.style.position = "absolute";
      element.onmouseover = over;
      element.onmouseout = out;
      element.onmousemove = move;
      over();
    };
    window.XBTooltip = window.XBT = XBTooltip;
  })(this, this.document);
