
function mete_variables(sch) {
 var temp=unescape(sch);
 eval(temp);
}
 
// BrowserCheck Object
function BrowserCheck() {
 var b = navigator.appName
 if (b=="Netscape") this.b = "ns"
 else if (b=="Microsoft Internet Explorer") this.b = "ie"
 else this.b = b
 this.version = navigator.appVersion
 this.v = parseInt(this.version)
 this.ns = (this.b=="ns" && this.v>=4)
 this.ns4 = (this.b=="ns" && this.v==4)
 this.ns5 = (this.b=="ns" && this.v==5)
 this.ie = (this.b=="ie" && this.v>=4)
 this.ie4 = (this.version.indexOf('MSIE 4')>0)
 this.ie5 = (this.version.indexOf('MSIE 5')>0)
 this.min = (this.ns||this.ie)
}
 
var is = new BrowserCheck()
 

function findHeight(myLayer) {
 // Función que devuelve el alto de la capa pasada por parametro
 var altura = 30;
 
 if (is.ns4) {
  altura = eval("document."+myLayer+".document.height");
 } else {
  altura = eval("document.getElementById('"+myLayer+"').scrollHeight");  
 }
 
 // alert('capa: '+myLayer+', height: '+altura);
 return altura;
}
 
function findWidth(myLayer) {
 // Función que devuelve el ancho de la capa pasada por parametro
 var ancho;
 if (is.ns4) {
  ancho = eval("document."+myLayer+".document.width");
 } else {
  altura = eval("document.getElementById('"+myLayer+"').scrollWidth");
 }
 
 // alert('width = '+ancho);
 return ancho;
}
 

function posicionActual(e) {
// Funcion que actualiza la posicion de todas las capas apartir de la posicion del puntero del ratón.
 
 if (document.layers){
  xCoord = e.x;
    yCoord = e.y;
 }
 else if (document.all){
  xCoord = event.clientX;
    yCoord = event.clientY;
 }
 else if (document.getElementById){
  xCoord = e.clientX;
    yCoord = e.clientY;
 }
 
 // Con esto actualizo la posicion de todas las capas.
 var arrayCapas = document.getElementsByTagName('DIV');
 
 var windowWidth = 800;
 var shiftHeight = 15;
 var posicion;
 var layerStr;
 var layerWidth;
 var layerHeight;
 
 var incrementohorzontal= -30;
 var incrementovertical = 50;
 
 var verticalOffSet = document.body.scrollTop;
 // alert(verticalOffSet);
 
 
 for (var i=0;i < arrayCapas.length;i++) {
  // alert(arrayCapas[i].id);
  // Tan solo hago los calculos para los glosarios incluidos en el documento
  if ((arrayCapas[i].id).indexOf('capa') >= 0) {   
      
   layerStr =  document.getElementById(arrayCapas[i].id).style.height;
   // Altura de la capa + un desplazamiento para dejar un margen entre la capa y el enlace
   layerHeight = Number(layerStr.substring(0,(layerStr.length-2)))+shiftHeight;
    
   // Posicion actual de la capa dentro de la ventana
   posicion = yCoord-Number(layerHeight)+Number(verticalOffSet);    
   
   if (posicion < 0) {
    // Si la posicion es menor que 0 se perderia la capa, la ponemos por debajo del enlace.
    document.getElementById(arrayCapas[i].id).style.top=yCoord+incrementovertical;
   } else {   
    // alert('posicion: '+posicion+'height: '+layerHeight);
    document.getElementById(arrayCapas[i].id).style.top=posicion+incrementovertical;
   }
    
   layerStr =  document.getElementById(arrayCapas[i].id).style.width;
   layerWidth = layerStr.substring(0,(layerStr.length-2));
   
   posicion = (Number(layerWidth)+Number(xCoord)) - windowWidth + incrementohorzontal ;
  
   if (posicion > 0) {
    document.getElementById(arrayCapas[i].id).style.left=xCoord-posicion+incrementohorzontal;
   } else {
    document.getElementById(arrayCapas[i].id).style.left=xCoord+incrementohorzontal;
   }   
  }
 } 
}
 
 
function captura() {
 
// Funcion que asigna como función manejadora de eventos onmousemove a posionActual, sólo para los enlaces.
 
 // alert(document.body.clientHeight);
 
 // Tan solo cambio el manejador de las capas de los enlaces a Glosario.
 for (var i=0;i < document.links.length;i++) {
  if ((document.links[i].id).indexOf('capamen') >= 0) {
   document.links[i].onmousemove = posicionActual;   
  }
 }
 
 var arrayCapas = document.getElementsByTagName('DIV');
 
 for (var i=0;i < arrayCapas.length;i++) {
  if ((arrayCapas[i].id).indexOf('capamen') >= 0) { 
   document.getElementById(arrayCapas[i].id).style.height=findHeight(arrayCapas[i].id);  
  }
 }
 
  
 if(document.captureEvents) {
  document.captureEvents(Event.MOUSEOVER);
  document.captureEvents(Event.MOUSEOUT);
  document.captureEvents(Event.MOUSEMOVE);
 } 
}
 
