 ie=(document.all)?1:0;
 ns4=(parseInt(navigator.appVersion)>=4 && parseInt(navigator.appVersion)<=5)?1:0;
 ns=(document.layers && ns4)?1:0;
 aktlayer = -1;
 droplayer=new Array();
 droplayerx=new Array();
 droplayery=new Array();
 layeranz=0;
 setTimer();
 if(ie==1||(ns4==1&&ns==0))
 {
  dhtml=1;
 }
 else
 {
  dhtml=0;
 }

 document.onmousemove = getMousePos

 if(dhtml==0)
 {
  document.captureEvents(Event.MOUSEMOVE)
 }

 function hideLayer(id)
 {
  if(dhtml==0)
  {
   eval('document.'+id+'.visibility="hide"');
  }
  else
  {
   elm=document.getElementById(id);
   elm.style.visibility="hidden";
  }
  aktlayer = -1;
 }

 function hideLayerNoAct(id)
 {
  if(dhtml==0)
  {
   eval('document.'+id+'.visibility="hide"');
  }
  else
  {
   elm=document.getElementById(id);
   elm.style.visibility="hidden";
  }
 }

 function showLayer(id)
 {
  hideAktLayer();
  clearTimeout(to);
  if(dhtml==0)
  {
   eval('document.'+id+'.visibility="show"');
  }
  else
  {
   elm=document.getElementById(id);
   elm.style.visibility="visible";
  }
  aktlayer = getNumber(id);
 }

 function showLayerNoAct(id)
 {
  clearTimeout(to);
  if(dhtml==0)
  {
   eval('document.'+id+'.visibility="show"');
  }
  else
  {
   elm=document.getElementById(id);
   elm.style.visibility="visible";
  }
 }



 function getNumber(id)
 {
  ret=-1;
  for(i=0;i<layeranz;i++)
  {
   if(droplayer[i]==id)
   {
    ret=i;
   }
  }
  return(ret);
 }

 function setTimer()
 {
  to=window.setTimeout("hideAktLayer()",1500);
 }

 function hideAktLayer()
 {
  if(aktlayer != -1)
  {
   x=mousex+windowx;
   y=mousey+windowy;
   lx_min=getLayerXMin(aktlayer);
   lx_max=getLayerXMax(aktlayer);
   ly_min=getLayerYMin(aktlayer);
   ly_max=getLayerYMax(aktlayer);
   if(x<lx_min||x>lx_max||y<ly_min||y>ly_max)
   {
    hideLayer(droplayer[aktlayer]);
   }
   else
   {
    setTimer();
   }
  }
 }

 function getElement(nr)
 {
  id=droplayer[nr];
  return(document.getElementById(id));
 }

 function getMousePos(e)
 {
  if(ie==1)
  {
   mousex=event.clientX;
   mousey=event.clientY;
   windowx=document.body.scrollLeft;
                        windowy=document.body.scrollTop;
  }
  else
  {
   mousex=e.pageX;
   mousey=e.pageY;
                        windowx=window.pageXOffset;
                        windowy=window.pageYOffset;
  }
 }

 function getLayerXMin(nr)
 {
  return(droplayerx[nr]);
 }

 function getLayerXMax(nr)
 {
  if(dhtml==1)
  {
   elm=getElement(nr);
   return(droplayerx[nr]+elm.scrollWidth);
  }
  else
  {
   return(droplayerx[nr]+eval('document.'+droplayer[nr]+'.clip.width'));
  }
 }

 function getLayerYMin(nr)
 {
  return(droplayery[nr]);
 }

 function getLayerYMax(nr)
 {
  if(dhtml==1)
  {
   elm=getElement(nr);
   return(droplayery[nr]+elm.offsetHeight);
  }
  else
  {
   return(eval('document.'+droplayer[nr]+'.top')+eval('document.'+droplayer[nr]+'.clip.height'));
  }
 }

 function moveElement(id, x, y)
 {
  droplayer[layeranz]=id;
  droplayerx[layeranz]=x;
  droplayery[layeranz]=y;
  layeranz=layeranz+1;
  var elm = null;
  if (document.getElementById)
  {
   elm = document.getElementById(id);
  }
  else if (document.all)
  {
   elm = document.all[id];
  }
  else if (document.layers)
  {
   elm = document.layers[id];
  }
  if (!elm)
  {
  }
  else if (elm.style)
  {
   if (typeof(elm.style.left) == 'number')
   {
    elm.style.left = x;
    elm.style.top  = y;
   }
   else
   {
    elm.style.left = x + 'px';
    elm.style.top  = y + 'px';
   }
  }
  else if (typeof(elm.left) == 'number')
  {
   elm.left = x;
   elm.top  = y;
  }
 }
