function submit_page(formulario)
 {
  hayError = false;
  if (document.forms.register.listas1.checked || document.forms.register.listas2.checked || document.forms.register.listas3.checked || document.forms.register.listas4.checked || document.forms.register.listas5.checked || document.forms.register.listas6.checked || document.forms.register.listas7.checked || document.forms.register.listas8.checked || document.forms.register.listas9.checked || document.forms.register.listas10.checked || document.forms.register.listas11.checked || document.forms.register.listas12.checked || document.forms.register.listas13.checked || document.forms.register.listas14.checked || document.forms.register.listas15.checked) 
		{
		}
		else
		{
		alert('Debe marcar alguna lista de interés.');
		return false;
		}
  if( esBlanco(formulario.email))
  {
    alert('El campo dirección de e-mail no puede quedar en blanco.');
    formulario.email.focus();
    return false;
  }
  if (hayError==false && (formulario.pais.value=='') )
  { 
    alert('Debe seleccionar un pais');
    document.register.pais.focus();
    return false;
  }
  if (hayError==false) 
   {
     if (CompruebaCp()== true)
      {
        document.register.cp.focus();
        return false;
      }
     else
        hayError=false;
   }
  var validaEmail= esEmailValido(formulario.email.value);
  if( validaEmail!=0 )
  {
    if (validaEmail==1) {
      
        alert('No es una dirección de email valida.');
        document.register.email.focus();
        return false;
    } 
    if (validaEmail==2) 
      {
         alert('Email incorrecto. El campo email no puede contener espacios.');
         document.register.email.focus();    
         return false;
      }   
    
  }
  if( esMenorLongitud(formulario.email, 60) == false)
  {
      alert('La dirección de e-mail es demasiado largo.');
      document.register.email.focus();
      return false;
  }
  if (  formulario.sexo.value == ''  )
    {
        alert ('Tienes que seleccionar tu sexo');
        document.register.sexo.focus();
        return false;
    }
  if (  formulario.edadcm.value == 'true' && formulario.fec_ncto.value == 'sel'  )
    {
        alert ('Tienes que seleccionar tu edad');
        document.register.fec_ncto.focus();
        return false;
    }      
  if (  formulario.ocupacion.value == ''  )
    {
        alert ('Tienes que seleccionar tu ocupacion');
        document.register.ocupacion.focus();
        return false;
    }
  if (  formulario.sector.value == ''  )
    {
        alert ('Tienes que seleccionar tu Sector');
        document.register.sector.focus();
        return false;
    }  
  formulario.submit();
  return true;
 }
// CHEQUEO DE BLANCOS
 function esBlanco(campo) {
  if(campo.value == '')
   return true;
  else
   for (var i=0;i<campo.value.length;i++)
    if (campo.value.charAt(i)!=' ') return false;

  return true;
 }

//CHEQUEO DE LONGITUD
 function esMenorLongitud(campo, longitud) {
  valor = campo.value;

  if(valor.length > longitud) {
   return false;
  }
  return true;
 }
  //CHEQUEO DE EMAIL
  function esEmailValido(email) // Devuelve los valores:0(correcto),1(incorrecto),2(con espacios)
  {
    if (email.indexOf(' ')!=-1) // Comprobamos que email no contenga espacios,tampoco en los laterales
       return 2;
    if (email.indexOf('@')==-1) // Comprobamos que exista al menos un carácter @
    {
       return 1;
    }
    else
    {
      var posarroba=email.indexOf('@');
      var nombre=email.substring(0, posarroba);
      var dominio=email.substring(posarroba+1);

      // Comprobamos que nombre  tenga al menos un carácter
      if (nombre.length==0)
         return 1;

      // Comprobamos que nombre no sea un solo punto
      if (nombre=='.')
         return 1;

      // Comprobamos que dominio tenga al menos un carácter
      if (dominio.length==0)
         return 1

      // Comprobamos que dominio tenga al menos existe un punto
      if (dominio.indexOf('.')==-1)
         return 1;

      // Comprobamos que la ni la primera ni la última posición del dominio sea el punto
      len_dom=dominio.length - 1;
      if ((dominio.charAt(0)=='.')||(dominio.charAt(len_dom)=='.'))
         return 1;

      // Comprobamos que tanto nombre como dominio sólo cotengan carácteres válidos
      if (CharInCorrectos(nombre)) return 1;
      if (CharInCorrectos(dominio)) return 1;
    }
    return 0;
   }

   function CharInCorrectos(cadena)
   {
     validos='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_.';

     // Comprobamos que cadena no tenga algún carácter no contemplado
     // en el string validos y que no existan dos puntos contiguos
     for (i=0;i<cadena.length;i++)
     {
       if (validos.indexOf(cadena.charAt(i))==-1) return true;
       if (cadena.charAt(i)=='.')
         if ((i!=cadena.length-1) && (cadena.charAt(i+1)=='.'))
           return true;
     }
     return false; // No se ha encontrado ninguna irregularidad
   }
  function CompruebaCp()
  {
        var pais     = document.register.pais.value;
        var cp       = document.register.cp.value;
        var longitud = document.register.cp.value.length;
        if (cp=='' && pais=='ESP') 
          {
            alert('Debes introducir el código postal');
            hayError='true';
            return true;
          }
        if (longitud != 5 && pais=='ESP')
          {
             alert('El código postal no es correcto');
             hayError='true';
             return true;
          }
        if (longitud==5 && pais=='ESP')
          {
           var pos0=parseInt(cp.charAt(0));
           var pos1=parseInt(cp.charAt(1));
           if (  (( pos0==5)&& (pos1 > 2)) || ( pos0 > 5 )    )
            {
               alert('El código postal no es correcto');
               hayError='true';
               return true;
            }
           validos='0123456789';   
           for (contador=0;contador<longitud;contador++)
            {
       		if (validos.indexOf(cp.charAt(contador))==-1) 
       		  {
               		alert('El código postal no puede contener letras ');
               		hayError='true';
               		return true;       		     
       		  }    		
            } 
 	     }

         hayError='false';
   	     return false;

   }