/*
* Mediante esta función ampliamos y reducimos el contenedor del menú de la 
* izquierda ajustandolo al alto de la página.
*/
    
$(window).load(function(){
  ampliaMenu();
});

function ampliaMenu(){
  var myHeight;
  var browser = navigator.appName;
  var size;
  // Solo ejecutaremos el script en el caso de que exista el menu lateral
  if (document.getElementById("menulateral_contenedor")){
    // Recuperamos el elemento 
    var elem = document.getElementById("menulateral_contenedor");
    // en el sizeMenu tenemos la medida mínima que ha de tener el menú para que
    // se visualice completo en la página. Este elemento no cambiará su altura 
    // aunque cambie la altura del menú.
    var sizeMenu = document.getElementById("menulateral_contenido").offsetHeight;
    // Recuperamos la altura actual del menú
    var sizeContenedor = document.getElementById("menulateral_contenedor").offsetHeight;
    // Miramos en que navegador estamos
    if (browser == "Opera"){
	    // En el caso de Opera...
      if (sizeMenu == sizeContenedor){
        // si el contenedor mide igual que el menu
        if (document.body.scrollHeight - 140 > sizeContenedor){
          // si la altura de la página sin la cabezera y el pie es mayor que el
          // contendor. Asignamos al contenedor dicha altura
          myHeight = document.body.scrollHeight - 140;
        } else {
          // sino la altura tiene que ser la del contenedor
          myHeight = sizeContenedor;
        }
      } else if (sizeMenu < sizeContenedor){
        // en el caso de que la altura del menú sea inferior a la del contenedor
        // hacemos que el contenedor mida como el menu
        sizeContenedor = sizeMenu;
        elem.style.height = sizeMenu + "px";
        // Miramos si la altura de la pagina sin la cabezera y el pie es 
        // superior a la del contenedor
        if (document.body.scrollHeight - 140 > sizeContenedor){
          // si es mayor redimensonamos el contenedor
          myHeight = document.body.scrollHeight - 140;
        } else {
          // sino cogemos la altura igual a la del contenedor
          myHeight = sizeContenedor;
        }
      }
    } else if (browser == "Netscape"){
      // en el caso de Mozzilla, utilizamos el offsetHeight en vez de scrollHeight
      if (sizeMenu == sizeContenedor){
        if (document.body.offsetHeight - 140 > sizeContenedor){
          myHeight = document.body.offsetHeight - 140;
        } else {
          myHeight = sizeContenedor;
        }
      } else if (sizeMenu < sizeContenedor){
        sizeContenedor = sizeMenu;
        elem.style.height = sizeMenu + "px";
        if (document.body.offsetHeight - 140 > sizeContenedor){
          myHeight = document.body.offsetHeight - 140;
        } else {
          myHeight = sizeContenedor;
        }
      }
    } else if (browser == "Microsoft Internet Explorer") {
      // en el caso de IE
      var ua = navigator.userAgent;
      var MSIEOffset = ua.indexOf("MSIE ");
      var version = ua.substring(MSIEOffset + 5, ua.indexOf(";", MSIEOffset));
      if (version == "6"){
        // si estamos en ie6
        if (sizeMenu == sizeContenedor){
          if (document.body.scrollHeight - 140 > sizeContenedor){
            myHeight = document.body.scrollHeight - 140;
          } else {
            myHeight = sizeContenedor;
          }
        } else if (sizeMenu < sizeContenedor){
          sizeContenedor = sizeMenu;
          elem.style.height = sizeMenu + "px";
          if (document.body.scrollHeight - 140 > sizeContenedor){
            myHeight = document.body.scrollHeight - 140;
          } else {
            myHeight = sizeContenedor;
          }
        }
      } else {
        //alert(sizeMenu +", "+sizeContenedor);
        if (sizeMenu >= sizeContenedor){
	        if (document.body.scrollHeight - 140 > sizeContenedor){
		        myHeight = document.body.scrollHeight - 120;
          } else {
            myHeight = sizeContenedor + 10;
          }
        } else if (sizeMenu < sizeContenedor){
          sizeContenedor = sizeMenu;
          elem.style.height = sizeMenu + "px";
          if (document.body.scrollHeight - 140 > sizeContenedor){
            myHeight = document.body.scrollHeight - 140;
          } else {
            myHeight = sizeContenedor + 10;
          }
        }
      }
    } else {
      // en el caso de ie7 o ie8
	    if (sizeMenu == sizeContenedor){
        if (document.body.scrollHeight - 140 > sizeContenedor){
          myHeight = document.body.scrollHeight - 140;
        } else {
          myHeight = sizeContenedor;
        }
      } else if (sizeMenu < sizeContenedor){
        sizeContenedor = sizeMenu;
        elem.style.height = sizeMenu + "px";
        if (document.body.scrollHeight - 140 > sizeContenedor){
          myHeight = document.body.scrollHeight - 140;
        } else {
          myHeight = sizeContenedor;
        }
      }
    }
    // La altura del menú tiene un mínimo de 300px
    if (myHeight < 300) {
      myHeight = 300;
      document.getElementById("menulateral_contenido").height=300;
    }  
    if (browser == "Microsoft Internet Explorer") {
	    elem.style.marginTop = 10 + "px";
	    myHeight = myHeight + 10;
	    elem.style.height = myHeight + "px";
    } else {
      elem.style.height = myHeight + "px";
    }
  }
}

