	  //Copyright 2006,2007 Bontrager Connection, LLC
      // http://bontragerconnection.com/ and http://willmaster.com/
      // Version: July 28, 2007
      var cX = 0; var cY = 0; var rX = 0; var rY = 0;
//      function UpdateCursorPosition(e){
//    		  cX = e.pageX; cY = e.pageY;
//      }
//      function UpdateCursorPositionDocAll(e){
//    		  cX = event.clientX; cY = event.clientY;
//      }
//   	  if(document.all) { document.onmousemove = UpdateCursorPositionDocAll; }
//   	  	else { document.onmousemove = UpdateCursorPosition; }
      function AssignPosition(d,date) {
    /*
      if(self.pageYOffset) {
      rX = self.pageXOffset;
      rY = self.pageYOffset;
      }
      else if(document.documentElement && document.documentElement.scrollTop) {
      rX = document.documentElement.scrollLeft;
      rY = document.documentElement.scrollTop;
      }
      else if(document.body) {
      rX = document.body.scrollLeft;
      rY = document.body.scrollTop;
      }
      if(document.all) {
      cX += rX;
      cY += rY;
      }
      d.style.left = (cX+5) + "px";
      d.style.top = (cY+5) + "px";
      */
    	  var obj=document.getElementById(date);
    	  d.style.left = getAbsX(obj);
    	  d.style.top  = getAbsY(obj);
    	  //d.style.left =
      }

//      function HideContent(d){
//    	  setTimeout(function(){HideContent1(d)},500);
//      }

      function HideContent(d){
    	  setTimeout(function(){HideContent1(d)},0);
      }

      function HideContent1(d) {
      if(d.length < 1) { return; }

      divPrefix = d;

      allDivs = document.getElementsByTagName('div');

      allDivsLenght= allDivs.length;
      for (i=0;i<allDivsLenght;i++)
      {
    	  if (allDivs[i].id.match(divPrefix) && allDivs[i].style.display=='block')
    		  allDivs[i].style.display = 'none';
      }

      //document.getElementById(d).style.display = "none";
      }

      function ShowContent(d,date){
    	  setTimeout(function(){ShowContent1(d,date)},100);
      }

      //var curDivDate = "";
      var divHideTimeout;
      function ShowContent1(d,date) {
      if(d.length < 1) { return; }

//      if (document.getElementById(d).style.display == 'block' && date==curDivDate)
//    	  return;
    	  //document.getElementById(d).style.display == 'none';

      // ajax request
//      if (new Ajax.Updater(d, 'y.php',{ method: "get", parameters: {data:date}}))
//    	  curDivDate=date;

      var dd = document.getElementById(d);
      //AssignPosition(dd,date);

	  var obj=document.getElementById(date);
	  //obj.onmouseout = function(){HideContent('uniquename3');};
	  tdWidth  = obj.offsetWidth;
	  tdHeight = obj.offsetHeight;
	  dd.style.left = (getAbsX(obj)+tdWidth-20)+'px';
	  dd.style.top  = (getAbsY(obj)+tdHeight-20)+'px';

      divPrefix = 'event';

      allDivs = document.getElementsByTagName('div');

      allDivsLenght= allDivs.length;
      for (i=0;i<allDivsLenght;i++)
      {
    	  if (allDivs[i].id.match(divPrefix) && allDivs[i].style.display=='block')
    		  allDivs[i].style.display = 'none';
      }

      dd.style.display = "block";

      var divHideTimeout = setTimeout('document.getElementById(\''+d+'\').style.display="none"',6000);


//      dd.onmouseover = 'clearTimeout('+divHideTimeout+')';

//      alert(dd.onmouseover);

      dd.onmouseover = function(event){clearTimeout(divHideTimeout); dd.style.display = "block"};
      }

      function ReverseContentDisplay(d) {
      if(d.length < 1) { return; }
      var dd = document.getElementById(d);
      AssignPosition(dd,date);
      if(dd.style.display == "none") { dd.style.display = "block"; }
      else { dd.style.display = "none"; }
      }


    function GetAbsCoordsForElement(elName){
          var obj=document.getElementById(elName);
          alert(getAbsX(obj));
          alert(getAbsY(obj));
    }

    function getAbsX(obj)
    {

          var leftOffset = 0;
          if (obj.offsetParent)
          {
                while (obj.offsetParent)
                {
                      leftOffset += obj.offsetLeft;
                      obj = obj.offsetParent;
                }
          }
          else if (obj.x) //for NN4
          {
                leftOffset = obj.x;
          }
          return leftOffset;
    }

    function getAbsY(obj)
    {
          var topOffset = 0;
          if (obj.offsetParent)
          {
                while (obj.offsetParent)
                {
                      topOffset += obj.offsetTop;
                      obj = obj.offsetParent;
                }
          }
          else if (obj.y) // for NN4
          {
                topOffset = obj.y;
          }
          return topOffset;
    }
