var MARGEN = 20;
var nombreObjetoError = "";
var ALTURA_MAXIMA_POP_UP = 400;
var ANCHURA_MAXIMA_POP_UP_CARACTERES = 500;
var ANCHURA_MAXIMA_POP_UP = 350;
var ALTURA_MAXIMA_POP_UP_COMPRA = 550;
var ANCHURA_MAXIMA_POP_UP_COMPRA = 650;
var MARGEN_SEGURIDAD = 80;
var MARGENCABECERA = 200;
var METODOAEJECUTARENRESPUESTA = "";
var RUTAINICIALIFRAMECENTRAL = "../es/publico/";
var PAGINAINICIALIFRAMECENTRAL = "paginaInicioPublico.jsp";

// Función que valida si el usuario / password es correcto
function validarUsuario()
{
    var login = document.getElementById("login");
    login.value = quitar_blancos(login);
    if(!campo_no_vacio_sin_alert(login))
    {
       mostrarCapaError("El Nombre de Usuario no puede estar vacío.", "login");
       return;
    }
    if(tieneCaracteresNoPermitidos(login))
    {
       mostrarCapaError("El Nombre de Usuario tiene caracteres no permitidos.", "login");
       return;
    }
    var password = document.getElementById("password");
    password.value = quitar_blancos(password);
    if(!campo_no_vacio_sin_alert(password))
    {
       mostrarCapaError("La Contraseña no puede estar vacía.", "password");
       return;
    }
    if(tieneCaracteresNoPermitidos(password))
    {
       mostrarCapaError("La Contraseña tiene caracteres no permitidos.", "password");
       return;
    }
    var accion = document.getElementById("accion");
    accion.value = "validarUsuario";
    encriptaYEnvia();
}

function olvidoPassword()
{
  var accion = document.getElementById("accion");
  accion.value = "olvidoPassword";
  var formulario = document.getElementById("formulario");
  formulario.submit();
}

// Método que desconecta a un usuario eliminando su sesión
function desconectar()
{
    var accion = document.getElementById("accion");
    accion.value = "desconectarUsuario";
    var formulario = document.getElementById("formulario");
    formulario.action = "../../es/servlet/min2min.servlets.UsuariosServlet";
    formulario.submit();
}

function enlacesSuperioresPrivado(paginaDestino)
{
    var formulario = document.getElementById('formulario');
    formulario.action = paginaDestino;
    formulario.target = "iframeCentral";
    formulario.submit();
    formulario.target = "";
}

function entrarEnviar()
{
    var enviar = document.getElementById('imagenEnviar');
    enviar.src = '../images/principal/enviar2.gif';
}

function salirEnviar()
{
    var enviar = document.getElementById('imagenEnviar');
    enviar.src = '../images/principal/enviar.gif';
}

function entrarBuscar()
{
    var enviar = document.getElementById('imagenBuscar');
    enviar.src = '../images/principal/buscar2.gif';
}

function salirBuscar()
{
    var enviar = document.getElementById('imagenBuscar');
    enviar.src = '../images/principal/buscar.gif';
}

function entrarLimpiar()
{
    var enviar = document.getElementById('imagenLimpiar');
    enviar.src = '../images/principal/limpiar2.gif';
}

function salirLimpiar()
{
    var enviar = document.getElementById('imagenLimpiar');
    enviar.src = '../images/principal/limpiar.gif';
}

// Función que hace visible la capa de cargando...
function mostrarCapaCargando(mensaje)
{
    var capaInformacion = document.getElementById('mostrarCargando');
    var capaMensaje = document.getElementById('mensajeCargando');

    // Se mete el mensaje
    capaMensaje.innerHTML = mensaje;
    // Se centra la capa en anchura
    // Primero se obtiene la altura y anchura de la página
    var anchuraPagina = document.body.scrollWidth;
    var alturaPagina = document.body.scrollHeight;

    // Segundo se obtiene la anchura de la capa donde se muestra el mensaje
    var anchuraCapa = document.getElementById('tablaCargandoDatos').offsetWidth;
    // Se calculan las cooredenadas donde hay que poner la capa. La posición X se pone en función de donde tenga
    // la página padre el scroll y se pone en el centro
    // var posX = Math.abs(Math.round(parent.document.body.scrollTop + (document.body.clientHeight / 2) - MARGENCABECERA));
    var posX = Math.abs(Math.round(parent.document.body.scrollTop) + MARGENCABECERA);
    var posY = Math.abs(Math.round((anchuraPagina-anchuraCapa)/2));
    // Se posiciona la capa
    capaInformacion.style.top=posX;
    capaInformacion.style.left=posY;

    // Se hace visible
    capaInformacion.style.visibility = 'visible';
    // Para simular que la capa con la información es modal, se introduce una capa entre la página
    // contenedor y la capa con la información
    var capaDebajoInformacion = document.getElementById('debajoInformacion');
    capaDebajoInformacion.style.width = anchuraPagina;
    capaDebajoInformacion.style.height = alturaPagina;
    // Se hace visible
    capaDebajoInformacion.style.visibility = 'visible';
    deshabilitarSelect();
}

// Función que hace visible la capa de error
function mostrarCapaError(mensaje, objError)
{
    var capaInformacion = document.getElementById('mostrarInformacionError');
    var capaMensaje = document.getElementById('mensajeInformacionError');
    // Se mete el mensaje
    capaMensaje.innerHTML = mensaje;
    // Se centra la capa en anchura
    // Primero se obtiene la altura y anchura de la página
    var anchuraPagina = document.body.scrollWidth;
    var alturaPagina = document.body.scrollHeight;
    // Segundo se obtiene la anchura de la capa donde se muestra el mensaje
    var anchuraCapa = document.getElementById('tablaMostrarInformacionError').width;
    // Se calculan las cooredenadas donde hay que poner la capa. La posición X se pone en función de donde tanga
    // la página padre el scroll y se pone en el centro
    var posX = Math.abs(Math.round(parent.document.body.scrollTop) + MARGENCABECERA);
    var posY = Math.abs(Math.round((anchuraPagina-anchuraCapa)/2));
    // Se posiciona la capa
    capaInformacion.style.top=posX;
    capaInformacion.style.left=posY;
    // Se hace visible
    capaInformacion.style.visibility = 'visible';

    // Para simular que la capa con la información es modal, se introduce una capa entre la página
    // contenedor y la capa con la información
    var capaDebajoInformacion = document.getElementById('debajoInformacion');
    capaDebajoInformacion.style.width = anchuraPagina;
    capaDebajoInformacion.style.height = alturaPagina;
    // Se hace visible
    capaDebajoInformacion.style.visibility = 'visible';
    // Se deja anotado cual es el elemento que produce el error
    nombreObjetoError = objError;
    deshabilitarSelect();
}

function deshabilitarSelect()
{
   try
   {
     //Generamos objecto enumerator
     arrObjeto= new Enumerator(document.all);
     //recorremos cada item en un bucle
     for(arrObjeto.moveFirst(); !arrObjeto.atEnd(); arrObjeto.moveNext())
     {
        //verificamos el tipo de objeto
        if ((arrObjeto.item().type=='select-one') || (arrObjeto.item().type=='select-multiple'))
        {
              //deshabilitamos los objetos requeridos
              arrObjeto.item().style.visibility = "hidden";
        }
     }
   }
   catch(e){}
}

function habilitarSelect()
{
   try
   {
     //Generamos objecto enumerator
     arrObjeto= new Enumerator(document.all);
     //recorremos cada item en un bucle
     for(arrObjeto.moveFirst(); !arrObjeto.atEnd(); arrObjeto.moveNext())
     {
        //verificamos el tipo de objeto
        if ((arrObjeto.item().type=='select-one') || (arrObjeto.item().type=='select-multiple'))
        {
              //deshabilitamos los objetos requeridos
              arrObjeto.item().style.visibility = "visible";
        }
     }
   }
   catch(e){}
}


function quitarCapaCargando()
{
    habilitarSelect();
    var capaInformacion = document.getElementById('mostrarCargando');
    var capaDebajoInformacion = document.getElementById('debajoInformacion');
    capaInformacion.style.visibility = 'hidden';
    capaDebajoInformacion.style.visibility = 'hidden';
}

function cerrarCapaInformacionError()
{
    habilitarSelect();
    var capaInformacion = document.getElementById('mostrarInformacionError');
    var capaDebajoInformacion = document.getElementById('debajoInformacion');
    capaInformacion.style.visibility = 'hidden';
    capaDebajoInformacion.style.visibility = 'hidden';
    // Ahora se selecciona el campo con error
    if(nombreObjetoError != "")
    {
      var objeto = document.getElementById(nombreObjetoError);
      try
      {
        objeto.focus();
        objeto.select();
      }
      catch(e){}
    }
}


/*
 * Funciones de Gestión de la capa de confirmación.
 */

/**
 * Expresión JS a evaluar si se pulsa el botón "Aceptar" del Cuadro de Confirmación.
 */
var _strExprSiAceptar = "";
var _strExprSiCancelar = "";

/**
 * Función utilizada para abrir la capa de confirmación.
 * @param strMensaje Mensaje a mostrar en el Cuadro de Confirmación.
 * @param strExpr Expresión javascript, cuya evaluación representa la lógica lanzar si se pulsa "Aceptar".
 */
function mostrarCapaConfirmacion ( strMensaje, strExpr, strExpr2 )
{
    // Nos quedamos con la expresión a evaluar en el caso de que el Usuario "acepte".
    _strExprSiAceptar = strExpr;
    _strExprSiCancelar = strExpr2;

    var capaInformacion = document.getElementById('mostrarConfirmacion');
    var capaMensaje = document.getElementById('mensajeConfirmacion');
    // Se mete el mensaje
    capaMensaje.innerHTML = strMensaje;
    // Se centra la capa en anchura
    // Primero se obtiene la altura y anchura de la página
    var anchuraPagina = document.body.scrollWidth;
    var alturaPagina = document.body.scrollHeight;
    // Segundo se obtiene la anchura de la capa donde se muestra el mensaje
    var anchuraCapa = document.getElementById('tablaConfirmacion').width;
    // Se calculan las cooredenadas donde hay que poner la capa. La posición X se pone en función de donde tanga
    // la página padre el scroll y se pone en el centro
    var posX = Math.abs(Math.round(parent.document.body.scrollTop) + MARGENCABECERA);
    var posY = Math.abs(Math.round((anchuraPagina-anchuraCapa)/2));
    // Se posiciona la capa
    capaInformacion.style.top=posX;
    capaInformacion.style.left=posY;
    // Se hace visible
    capaInformacion.style.visibility = 'visible';

    // Para simular que la capa con la información es modal, se introduce una capa entre la página
    // contenedor y la capa con la información
    var capaDebajoInformacion = document.getElementById('debajoInformacion');
    capaDebajoInformacion.style.width = anchuraPagina;
    capaDebajoInformacion.style.height = alturaPagina;
    // Se hace visible
    capaDebajoInformacion.style.visibility = 'visible';
    deshabilitarSelect();
}

/**
 * Función llamada cuando se pulsa "Aceptar" en la capa de confirmación.
 */
function okConfirmacion ()
{
    // Cerramos la capa de confirmación.
    cerrarConfirmacion();
    // Evaluamos la expresión.
    eval ( _strExprSiAceptar );
}

/**
 * Función llamada cuando se pulsa "Cancelar" en la capa de confirmación.
 */
function cancelConfirmacion ()
{
    // Cerramos la capa de confirmación.
    cerrarConfirmacion ();
    // Evaluamos la expresión.
    eval ( _strExprSiCancelar );}

/**
 * Cierre de la capa de Confirmación.
 */
function cerrarConfirmacion ()
{
    habilitarSelect();
    var capaInformacion = document.getElementById('mostrarConfirmacion');
    capaInformacion.style.visibility = 'hidden';
    var capaDebajoInformacion = document.getElementById('debajoInformacion');
    capaDebajoInformacion.style.visibility = 'hidden';
}

function ponerCapasTraslucidas()
{
    var capaDebajoInformacion = document.getElementById("debajoInformacion");
    capaDebajoInformacion.style.filter = "alpha(opacity=30)";
    capaDebajoInformacion.style.opacity = 0.3;
    capaDebajoInformacion.style.MozOpacity = 0.3;
    capaDebajoInformacion.style.KhtmlOpacity = 0.3;
}

function subirScroll()
{
  parent.document.body.scrollTop = 0;
}

function redimensionaIframe(alturaTablaIFrame)
{
    var iframe = document.getElementById("iframeCentral");
    iframe.style.height = alturaTablaIFrame + MARGEN;
}

function redimensionaIframeListado()
{
    var objeto = document.getElementById("tablaInfo");
    var alturaIframe = objeto.offsetHeight;
    parent.redimensionaIframe(alturaIframe);
}

function entrarFila(numFila)
{
    var fila = document.getElementById("fila"+numFila);
    fila.className = "filaEncima";
}

function salirFila(numFila, nombreClase)
{
    var fila = document.getElementById("fila"+numFila);
    fila.className = nombreClase;
}

function cambiarTitulo(objeto, nombreClase)
{
    objeto.className = nombreClase;
}

// Se recibe como parámetroe el id de usuarios y el tipo de información que
// se quiere recibir: E-->Email, S-->Número de Móvil
// Destino: para / cc/ cco
function abreListaContactos(tipoInformacion, destino)
{
  if(popUpWin)
  {
    if(!popUpWin.closed) popUpWin.close();
  }

  x = (screen.width - ANCHURA_MAXIMA_POP_UP) / 2;
  y = (screen.height - ALTURA_MAXIMA_POP_UP) / 2;

  var urlEnvio = '../../es/servlet/min2min.servlets.ContactosServlet?accion=obtenerContactos&tipoInformacion='+tipoInformacion+'&destino='+destino;
  popUpWin = open(urlEnvio, 'popUpWin', 'toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=yes,copyhistory=yes,width=350,height=400,left='+x+', top='+y+',screenX=0,screenY=0');
}

// Se recibe como parámetro los créditos a comprar, el código de forma de pago en tarjeta
function abrePopUpCompraCreditos(numCreditos, codigoCompraTarjeta)
{
  if(popUpWin)
  {
    if(!popUpWin.closed) popUpWin.close();
  }

  x = (screen.width - ANCHURA_MAXIMA_POP_UP_COMPRA) / 2;
  y = (screen.height - ALTURA_MAXIMA_POP_UP_COMPRA) / 2;

  var urlEnvio = '../../es/servlet/min2min.servlets.CreditosServlet?accion=seleccionFormaPago&numCreditosAComprar='+numCreditos+'&formaPago='+codigoCompraTarjeta;
  popUpWin = open(urlEnvio, 'popUpWin', 'toolbar=no,location=no,directories=no,status=yes,menubar=no,scrollbars=yes,resizable=yes,copyhistory=yes,width=650,height=550,left='+x+', top='+y+',screenX=0,screenY=0');
}

// Método que abre la lista de prefijos
function abrePrefijos()
{
  if(popUpWin)
  {
    if(!popUpWin.closed) popUpWin.close();
  }

  x = (screen.width - ANCHURA_MAXIMA_POP_UP) / 2;
  y = (screen.height - ALTURA_MAXIMA_POP_UP) / 2;

  var urlEnvio = '../../es/servlet/min2min.servlets.SmsServlet?accion=verPrefijos';
  popUpWin = open(urlEnvio, 'popUpWin', 'toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=yes,copyhistory=yes,width=350,height=400,left='+x+', top='+y+',screenX=0,screenY=0');
}

// Método que abre la lista de caracteres permitidos
function abreCaracteres()
{
  if(popUpWin)
  {
    if(!popUpWin.closed) popUpWin.close();
  }

  x = (screen.width - ANCHURA_MAXIMA_POP_UP_CARACTERES) / 2;
  y = (screen.height - ALTURA_MAXIMA_POP_UP) / 2;

  var urlEnvio = '../../es/servlet/min2min.servlets.SmsServlet?accion=verCaracteres';
  popUpWin = open(urlEnvio, 'popUpWin', 'toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=yes,copyhistory=yes,width=500,height=400,left='+x+', top='+y+',screenX=0,screenY=0');
}

function cerrarPopUp()
{
  window.close();
}

function entrarVentanaAyuda(texto, alturaARestar, e)
{
  // Se deshabilitan los select
  deshabilitarSelect();
  // Se introduce el texto
  var objTexto = document.getElementById("textoAyuda");
  objTexto.innerHTML = texto;

  if (!e) e = window.event;
  var posX;
  var posY;
  if (navigator.appName =="Microsoft Internet Explorer")
  {
    posX = e.clientX + document.documentElement.scrollLeft + document.body.scrollLeft;
    posY = e.clientY + document.documentElement.scrollTop + document.body.scrollTop;
  }
  else
  {
    posX = e.clientX + window.scrollX;
    posY = e.clientY + window.scrollY;
  }

  var info = document.getElementById("mostrarAyuda");
  // Antes de mover la capa, se averigua la altura y anchura de la capa de ayuda
  var alturaCapaAyuda = info.offsetHeight;
  var anchuraCapaAyuda = info.offsetWidth;
  // Se mueve la capa
  info.style.left = posX - 370;
  // Hay que sumarle también el desplazamiento del scroll (document.body.scrollTop)...
  info.style.top = posY - alturaARestar;
  // Se hace visible la capa
  info.style.visibility = "visible";
}

function salirVentanaAyuda()
{
  var info = document.getElementById("mostrarAyuda");
  info.style.visibility = "hidden";
  // Se habilitan los select
  habilitarSelect();
}

function entrarVentanaEjemplo(texto, alturaARestar, e)
{
  // Se deshabilitan los select
  deshabilitarSelect();
  // Se introduce el texto
  var objTexto = document.getElementById("textoEjemplo");
  objTexto.innerHTML = texto;

  if (!e) e = window.event;
  var posX;
  var posY;
  if (navigator.appName =="Microsoft Internet Explorer")
  {
    posX = e.clientX + document.documentElement.scrollLeft + document.body.scrollLeft;
    posY = e.clientY + document.documentElement.scrollTop + document.body.scrollTop;
  }
  else
  {
    posX = e.clientX + window.scrollX;
    posY = e.clientY + window.scrollY;
  }

  var info = document.getElementById("mostrarEjemplo");
  // Antes de mover la capa, se averigua la altura y anchura de la capa de ayuda
  var alturaCapaAyuda = info.offsetHeight;
  var anchuraCapaAyuda = info.offsetWidth;
  // Se mueve la capa
  info.style.left = posX - 250;
  // Hay que sumarle también el desplazamiento del scroll (document.body.scrollTop)...
  info.style.top = posY - alturaARestar;
  // Se hace visible la capa
  info.style.visibility = "visible";
}

function salirVentanaEjemplo()
{
  var info = document.getElementById("mostrarEjemplo");
  info.style.visibility = "hidden";
  // Se habilitan los select
  habilitarSelect();
}

// Este método hace la llamada al formulario de la llamada oculta y además
// almacena el método que hay que ejecutar cuando se reciba una respuesta. Ese
// método que será tenido en cuenta en "respuestaLlamaOculta"
function hacerLlamadaOculta(metodoRespuesta, mensajeCapaCargando)
{
  // Se almacena el método
  METODOAEJECUTARENRESPUESTA = metodoRespuesta;
  // Se mete la capa de cargando
  mostrarCapaCargando(mensajeCapaCargando);
  var formularioLlamadaOculta = document.getElementById("formularioLlamadaOculta");
  formularioLlamadaOculta.submit();
}

// Este método lo único que hace es recibir la respuesta de la llamada oculta
// y ejecutar el método que se había dejado guardado previamente
function respuestaLlamaOculta(todoOK, mensaje)
{
  // Se quita la capa de cargando
  quitarCapaCargando();
  // Se evalua la respuesta
  eval(METODOAEJECUTARENRESPUESTA+"("+todoOK+",'"+mensaje+"')");
}

function limitaTextArea(objeto, limite)
{
  var longitud = objeto.value.length;
  if(longitud > limite)
  {
    objeto.value = objeto.value.substring(0,limite);
  }
}

function limitaTextAreaSinRetornosCarro(objeto, limite, e)
{
  // Lo primero sera quitar los retornos de carro y tabuladores si se ha
    // pulsado alguna de las teclas de caracteres
    var teclaPulsada;
    if (e.keyCode)
         teclaPulsada = e.keyCode;
    else if (e.which)
         teclaPulsada = e.which;
    else
        teclaPulsada = 0;

    // Si he pulsado el intro
    if(teclaPulsada == 13)
      objeto.value = quitar_retornoCarro(objeto);

    limitaTextArea(objeto, limite);
}

function cargarDetalleCalendario(diaDetalle)
{
  var diaCalendario = document.getElementById("fechaDetalle");
  diaCalendario.value = diaDetalle;
  var accion = document.getElementById("accion");
  accion.value = "verDetalleCalendario";
  var formulario = document.getElementById("formulario");
  formulario.action = "../../es/servlet/min2min.servlets.CalendarioServlet";
  formulario.target = "iframeDetalleCalendario";
  formulario.submit();
  formulario.target = "";
}

function refrescarCalendario()
{
  var accion = document.getElementById("accion");
  accion.value = "refrescarCalendario";
  var formulario = document.getElementById("formulario");
  formulario.action = "../../es/servlet/min2min.servlets.CalendarioServlet";
  formulario.target = "iframeCalendario";
  formulario.submit();
  formulario.target = "";
}

function refrescarDetalleCalendario()
{
  var accion = document.getElementById("accion");
  accion.value = "verDetalleCalendario";
  var formulario = document.getElementById("formulario");
  formulario.action = "../../es/servlet/min2min.servlets.CalendarioServlet";
  formulario.target = "iframeDetalleCalendario";
  formulario.submit();
  formulario.target = "";
}

function recargaNombreParteSuperior(nombre, primerApellido, segundoApellido)
{
  var capaNombreApellidosParteSuperior = document.getElementById("nombreApellidosParteSuperior");
  capaNombreApellidosParteSuperior.innerHTML = nombre + " " +primerApellido + " " + segundoApellido;
}

function cambiaMenu(rutaDestino, semilla)
{
  document.location.href = "../../es/inicio.jsp"+semilla;
  var formulario = document.getElementById('formulario');
  formulario.action = rutaDestino;
  formulario.submit();
}

// En función de la subopción adoptada en la url, se va a una página u otra
function cargaIframeCentral()
{
  var url = document.location.href;
  var almohadilla = url.indexOf('#');
  var formulario = document.getElementById('formulario');
  // Si no hay almohadilla, cargo la página por defecto
  if(almohadilla == -1)
  {
    formulario.action = RUTAINICIALIFRAMECENTRAL + PAGINAINICIALIFRAMECENTRAL;
  }
  else
  {
    var semilla = url.substring(almohadilla + 1, url.length);
    if(semilla == "precios")
      formulario.action = "../es/servlet/min2min.servlets.PublicoServlet?accion=verPrecios";
    else if(semilla == "servicios")
      formulario.action = "../es/servlet/min2min.servlets.PublicoServlet?accion=verServicios";
    else if(semilla == "preguntas")
      formulario.action = "../es/servlet/min2min.servlets.PublicoServlet?accion=verPreguntas";
    else
      formulario.action = RUTAINICIALIFRAMECENTRAL + semilla + ".jsp";
  }
  formulario.submit();
}

function ponerFoco(lugarFoco)
{
  var obj = document.getElementById(lugarFoco);
  obj.focus();
}

function pulsarIntro(e)
{
     var teclaPulsada;
     if (e.keyCode)
         teclaPulsada = e.keyCode;
     else if (e.which)
         teclaPulsada = e.which;
     else
         return false;

     if (teclaPulsada == 13)
        validarUsuario();

     return true;
}

function enviarDatosContactar()
{
  var objRemitente = document.getElementById("remitente");
  objRemitente.value = quitar_blancos(objRemitente);
  if(!campo_no_vacio_sin_alert(objRemitente))
  {
     mostrarCapaError("El E-Mail de Contacto no puede estar vacío.", "remitente");
     return;
  }
  if(!email_ok_sin_alert(objRemitente))
  {
     mostrarCapaError("El E-Mail de Contacto no es correcto", "remitente");
     return;
  }
  var objTextoMensaje = document.getElementById("textoMensaje");
  objTextoMensaje.value = quitar_blancos_retornoCarro(objTextoMensaje);
  if(!campo_no_vacio_sin_alert(objTextoMensaje))
  {
     mostrarCapaError("El texto del mensaje no puede estar vacío.", "textoMensaje");
     return;
  }
  mostrarCapaCargando("Enviando datos");
  var formulario = document.getElementById("formulario");
  formulario.submit();
}

function enviarDatosContactarPrivado()
{
  var objTextoMensaje = document.getElementById("textoMensaje");
  objTextoMensaje.value = quitar_blancos_retornoCarro(objTextoMensaje);
  if(!campo_no_vacio_sin_alert(objTextoMensaje))
  {
     mostrarCapaError("El texto del mensaje no puede estar vacío.", "textoMensaje");
     return;
  }
  mostrarCapaCargando("Enviando datos");
  var formulario = document.getElementById("formulario");
  formulario.submit();
}

function pulsarIntroOlvidoPassword(e)
{
     var teclaPulsada;
     if (e.keyCode)
         teclaPulsada = e.keyCode;
     else if (e.which)
         teclaPulsada = e.which;
     else
         return false;
     if (teclaPulsada == 13)
        validarDatosOlvidoPassword();

     return true;
}

// Función que valida si el usuario / e-mail es correcto
function validarDatosOlvidoPassword()
{
    var login = document.getElementById("login");
    login.value = quitar_blancos(login);
    if(!campo_no_vacio_sin_alert(login))
    {
       mostrarCapaError("El Nombre de Usuario no puede estar vacío.", "login");
       return;
    }

    var email = document.getElementById("email");
    email.value = quitar_blancos(email);
    if(!campo_no_vacio_sin_alert(email))
    {
       mostrarCapaError("El e-Mail no puede estar vacío.", "email");
       return;
    }
    if(!email_ok_sin_alert(email))
    {
       mostrarCapaError("El e-Mail no es correcto", "email");
       return;
    }
    mostrarCapaCargando("Enviando datos");
    var formulario = document.getElementById("formulario");
    formulario.submit();
}

function none(){}

function suplantarUsuarioParent(idUsuario)
{
   var form = document.getElementById("formulario");
   var accion = document.getElementById("accion");
   mostrarCapaCargando("Suplantando usuario");
   accion.value = "suplantarUsuario";
   form.action = "../../es/servlet/min2min.servlets.AdministracionServlet?idUsuario="+idUsuario;
   form.target = "_self";
   form.submit();
}
