  /* comprueba que el campo emailStr sea una dirección de correo válida */
  function esEmail(emailStr) 
  {
    /* Verificar si el email tiene el formato user@dominio. */
    var emailPat=/^(.+)@(.+)$/; 
    /* Verificar la existencia de caracteres. ( ) < > @ , ; : \ " . [ ] */
    var specialChars="\\(\\)<>@,;:\\\\\\\"\\.\\[\\]"; 
    /* Verifica los caracteres que son válidos en una dirección de email */
    var validChars="\[^\\s" + specialChars + "\]";
    var quotedUser="(\"[^\"]*\")";
    /* Verifica si la dirección de email está representada con una dirección IP Válida */ 
    var ipDomainPat=/^\[(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})\]$/;
    /* Verificar caracteres inválidos */ 
    var atom=validChars + '+';
    var word="(" + atom + "|" + quotedUser + ")";
    var userPat=new RegExp("^" + word + "(\\." + word + ")*$");
    /* domain, as opposed to ipDomainPat, shown above. */
    var domainPat=new RegExp("^" + atom + "(\\." + atom +")*$");
    var matchArray=emailStr.match(emailPat);
    if (matchArray==null) {
      alert("La dirección de E-mail es incorrecta (comprueba la @ y los .)");
      return false;
    }
    var user=matchArray[1];
    var domain=matchArray[2];
    // Si el user "user" es valido 
    if (user.match(userPat)==null) {
      // Si no
      alert("El nombre de usuario no es válido");
      return false;
    }
    /* Si la dirección IP es válida */
    var IPArray=domain.match(ipDomainPat);
    if (IPArray!=null) {
      for (var i=1;i<=4;i++) {
        if (IPArray[i]>255) {
          alert("IP de destino inválida");
          return false;
        }
      }
      return true;
    }
    var domainArray=domain.match(domainPat);
    if (domainArray==null) {
      alert("El dominio parece no ser válido");
      return false;
    }
    var atomPat=new RegExp(atom,"g");
    var domArr=domain.match(atomPat);
    var len=domArr.length;
    if (domArr[domArr.length-1].length<2 || domArr[domArr.length-1].length>3) { 
      alert("La dirección debe tener 3 letras si es .com, .org, .net,... o 2 si es de algún pais");
      return false;
    }
    if (len<2) {
      alert("La dirección es erronea");
      return false;
    }
    // La dirección de email ingresada es Válida
    return true;
  }

function abrirVentana(ancho,alto,url){
// función para abrir una ventana nueva con el ancho y el alto indicados
  centroX = 0;
  centroY = 0;
  ventana = open(url,"VentanaNueva","status=0,toolbar=no,scrollbars=YES,width=" + ancho + ", height=" + alto + ",top=" + centroX +",left=" + centroY)
}

function cambiaTitulo(titulo)
// Modifíca el título de la ventana
{
  document.title = titulo;
}