<!--

var sFolderName = '';
var sOldFolderName = '';
var previewTooltip = null;
var previewTooltipOld = null;

// var visibilityStack=0;
document.onmousemove = updateTooltip;
document.onmouseout = hideTooltip;

function updateTooltip(e) 
{
//   alert('updateTooltip(' +e+ ')');
  if (previewTooltip == null) 
    return;
    

    if(!bUseNewEventHandling) // new event handling
    {
      previewTooltip.style.visibility='visible'; // anpl 07.04.2008
      previewTooltip.style.display='block';
    }
  
  // ---------------------------------------------------------------------
  var width, height;
  if (self.innerHeight) // all except Explorer
  {
  	width = self.innerWidth;
  	height = self.innerHeight;
  }
  else if (document.documentElement && document.documentElement.clientHeight)
  	// Explorer 6 Strict Mode
  {
  	width = document.documentElement.clientWidth;
  	height = document.documentElement.clientHeight;
  }
  else if (document.body) // other Explorers
  {
  	width = document.body.clientWidth;
  	height = document.body.clientHeight;
  }
  // ---------------------------------------------------------------------
  var xo,yo;
  if (self.pageYOffset) // all except Explorer
  {
  	xo = self.pageXOffset;
//     xo = 0;
  	yo = self.pageYOffset;
//     yo = 0;
  }
  else if (document.documentElement && document.documentElement.scrollTop) // Explorer 6 Strict
  {
  	xo = document.documentElement.scrollLeft;
//     xo = 0;
  	yo = document.documentElement.scrollTop;
//     yo = 0;
  }
  else if (document.body) // all other Explorers
  {
  	xo = document.body.scrollLeft;
//     xo = 0;
  	yo = document.body.scrollTop;
//     yo = 0;
  }

  // ---------------------------------------------------------------------
  // Groesse des Ctrl
  var cx, cy;
       
	cx = parseInt(previewTooltip.style.width.replace('px','')); 
	cy = parseInt(previewTooltip.style.height.replace('px',''));

  var dist = 20;

  // ---------------------------------------------------------------------    
  var x, y;
  
  if(bUseNewEventHandling) // new event handling
  {
    x = (document.all) ? window.event.x : e.x; // e.x is ABSOLUTE on screen, take this one
    y = (document.all) ? window.event.y : e.y; // e.y is ABSOLUTE on screen, take this one
  
    if(typeof(x)=='undefined') // firefox
    {
      x = e.pageX - xo; // take RELATIVE x coordinates and substract the scrolling
      y = e.pageY - yo; // take RELATIVE y coordinates and substract the scrolling
    }
  
  }
  
  if(!bUseNewEventHandling) // old event handling
  {
    x = (document.all) ? window.event.x + document.body.scrollLeft : e.pageX;
    y = (document.all) ? window.event.y + document.body.scrollTop  : e.pageY;
  }
  
  // ---------------------------------------------------------------------
  var upperpos, leftpos;
  
  // Wo ist der meiste Platz? (stimmt nicht zu 100% in IE und Opera ueberein)
  if(height / 2.0 < y)
  {
    upperpos = false;
    //    |
    // ---|---
    //    | *
    if(width / 2.0 < x)
    {
      leftpos = false;
    }
    //    |
    // ---|---
    //  * | 
    else
    {
      leftpos = true;
    }
  }
  else
  {
    upperpos = true;
    
    //    | *
    // ---|---
    //    | 
    if(width / 2.0 < x)
    {
     leftpos = false;
    }
    //  * |
    // ---|---
    //    | 
    else
    {
       leftpos = true;
    }
  }
  
  if(bUseNewEventHandling) // new event handling
  {
  
  //   document.title='y: '+y+'   yo: '+yo; // debug out
    if(previewTooltip)
    {
      if(isOnElement(document.getElementById(sFolderName), x, y))
      {
        previewTooltip.style.visibility='visible';
      }
      else
      {
        previewTooltip.style.visibility='hidden';
      }
    }
    
    // also check the PREVIOUSLY shown tooltip, since when mouse movement is quite fast,
    // the mousemove event might fire after the cursor has moved to another folder, which
    // will result in the variable previewTooltip having changed the value BEFORE the
    // tooltip was properly hidden, which will leave tooltips displayed, even if they are
    // no longer supposed to be shown
    if(previewTooltipOld)
    {
      if(!isOnElement(document.getElementById(sOldFolderName), x, y))
      {
        previewTooltipOld.style.visibility='hidden';
      }
    }
    
  }
  

//   upperpos = false;
//   leftpos = true;
  // ---------------------------------------------------------------------
  
  x = 0;
  y = 0;
  
  if(upperpos == true) // Am unteren Rand anordnen
  {
    y = height - cy - dist - (2 * dist);
  }

  if(leftpos == true)  // Am rechten Rand anordnen
  {
    x = width - cx - dist - (2 * dist);
  }
  
	previewTooltip.style.left = (x + dist) + 'px';
	previewTooltip.style.top  = (y + dist) + 'px';

}

function showTooltip(id,sFolderID)
{  
  if(bUseNewEventHandling) // new event handling
  {
    previewTooltipOld=previewTooltip; // store which tooltip was PREVIOUSLY shown
    sOldFolderName=sFolderName; // store id of element to which the PREVIOUS tooltip belongs
    sFolderName=sFolderID; // store id of element to which the tooltip belongs
  }
  
  if(id != null && id != '')
  {
	  previewTooltip = document.getElementById(id);
// 	  visibilityStack++;
	  if(previewTooltip)
	  {
	    // previewTooltip.style.display = "block"
	  }
	   
	}
}

// function hideDelayed(id)
// {
//   window.setTimeout('document.getElementById(\''+id+'\').style.visibility=\'hidden\';previewtooltip=null;',500);
// }

function hideTooltip()
{
  if(previewTooltip)
  {
    previewTooltip.style.visibility='hidden';
    if(!bUseNewEventHandling) // old event handling
    {
      previewTooltip=null;
    }
  }
  if(bUseNewEventHandling) // new event handling
  {
    if(previewTooltipOld)
    {
      previewTooltipOld.style.visibility='hidden';
    }
  }
}

//-->

