MIN_LEN_LOGIN=3;
MIN_LEN_PASS=6;
MIN_LEN_TLD=2;
MAX_LEN_TLD=4;
MIN_LEN_DOMAINNAME=2;
MIN_LEN_TLF=9;
MAX_LEN_TLF=15;
MIN_LEN_TINY=20;

function popUp(site,ww,hh,ventana,scroll) {
   var vars = 'locationbar=no, toolbar=no, titlebar=no, scrollbars='+scroll+', resizeable=no, alwaysRaised=no, directories=no, menubar=no, location=no, width='+ ww + ', height=' + hh + ', left = 50, top = 50';
   var newWin = open(site, ventana, vars);
}

function abreLegal(){
   popUp('legal.php',500,550,'legal','yes');
}

function trim(cadena){
   for(i=0;cadena.charAt(i)==" " && i<cadena.length;){
      cadena=cadena.substring(i+1, cadena.length);
   }

   for(i=cadena.length-1;cadena.charAt(i)==" " && i>=0; i=cadena.length-1)
      cadena=cadena.substring(0,i);

   return cadena;
}

function esCadenaVacia(cadena){
   if (cadena=="" || trim(cadena)=="")
      return true;

   return false;
}

function compruebaCaracteresEmail(cadena){
   return true;
}

function validaEmail(email){
   if (esCadenaVacia(email))
      return false;

   // Se comprueba que tiene usuario seguido de arroba seguido de al menos  2 carácteres seguido de punto y terminado en 2 a 4 caracteres. Todos los caracteres deben ser a-z 0-9 o '-' o '.'
   usuario=email.substring(0,email.indexOf('@'));
   //alert(usuario);
   dominio=email.substring(email.indexOf('@')+1,email.length);
   //alert(dominio);
   if (esCadenaVacia(usuario) || esCadenaVacia(dominio) || !compruebaCaracteresEmail(usuario) || !compruebaCaracteresEmail(dominio))
      return false;
   nombre=dominio.substring(0,dominio.lastIndexOf('.'));
   ///alert(nombre);
   tld=dominio.substring(dominio.lastIndexOf('.')+1,dominio.length);
   //alert(tld);
   if (esCadenaVacia(nombre) || esCadenaVacia(tld) || nombre.length<MIN_LEN_DOMAINNAME || tld.length<MIN_LEN_TLD || tld.length > MAX_LEN_TLD || !compruebaCaracteresEmail(nombre) || !compruebaCaracteresEmail(tld))
      return false;

   return true;
}

function esNumero(numero){
   if (esCadenaVacia(numero))
      return false;
   for(i=0;i<numero.length;i++)
      if (numero.charAt(i)<'0' || numero.charAt(i)>'9')
         return false;

   return true;
}

function validaTelefono(telefono){
   if (telefono.length<MIN_LEN_TLF ||telefono.length>MAX_LEN_TLF)
      return false;

   return esNumero(telefono);

}

function validaTelefonoInternacional(telefono){
  if (telefono.charAt(0)=="+")
     return validaTelefono(telefono.substring(1,telefono.length-1));
  else
     return false;
}

function validaContactar(){
  if (esCadenaVacia(document.contactar.nombre.value)){
     document.contactar.nombre.focus();
     alert("Debe indicar un nombre.");
     return false;
  }

  if (!validaEmail(document.contactar.email.value)){
     document.contactar.email.focus();
     alert("Debe indicar un email válido");
     return false;
  }

  if (!esCadenaVacia(document.contactar.telefono.value)){
     if (!validaTelefono(document.contactar.telefono.value)){
        document.contactar.telefono.focus();
        alert("El teléfono no es correcto");
        return false;
     }
  }

  return true;
}
