var Num="0132456789";
var CarNom="abcdefghijklmnñopqrstuvwxyzáéíóú-";
var CarCargo="abcdefghijklmnñopqrstuvwxyz-áéíóú";
var CarCorreo="abcdefghijklmnopqrstuvwxyz-_.";

function EsNum(car)
 {
  return Num.indexOf(car);
 }

function EsCar(car)
 {
  return CarNom.indexOf(car);
 }

function EsCargo(car)
 {
  return CarCargo.indexOf(car);
 }

function EsCorreo(car)
 {
  return CarCorreo.indexOf(car);
 }
 
function CompruebaNombre1()
 {
  cadena=document.formulario.nombre.value.toLowerCase();
	for (var i=0;i<cadena.length;i++)
	 if (EsCar(cadena.charAt(i))==-1)
	  {
		 alert('No has introducido un nombre válido');
		 document.formulario.nombre.select();
		 document.formulario.nombre.focus();
		 return(0);
		}
	if (document.formulario.nombre.value.length<3)
	 {
	  alert('El nombre tiene menos de tres caracteres');
		document.formulario.nombre.select();
		document.formulario.nombre.focus();
		return(0);
	 }
 }

function CompruebaNombre()
 {
  cadenas=document.formulario.nombre.value.split(' ');
  for (var i=0;i<cadenas.length;i++)
   cadenas[i]=cadenas[i].toLowerCase();
	for (var j=0;j<cadenas.length;j++)
	 {
	  for (var i=0;i<cadenas[j].length;i++)
	   if (EsCar(cadenas[j].charAt(i))==-1)
	    {
		   alert('No has introducido un nombre válido, no se pueden introducir números o caracteres no alfabéticos');
			 document.formulario.nombre.select();
		   document.formulario.nombre.focus();
		   return(0);
		  }
	 }
 }
 
function CompruebaApellido()
 {
  cadenas=document.formulario.apellidos.value.split(' ');
  for (var i=0;i<cadenas.length;i++)
   cadenas[i]=cadenas[i].toLowerCase();
	for (var j=0;j<cadenas.length;j++)
	 {
	  for (var i=0;i<cadenas[j].length;i++)
	   if (EsCar(cadenas[j].charAt(i))==-1)
	    {
		   alert('No has introducido unos apellidos válidos, no se pueden introducir números o caracteres no alfabéticos');
			 document.formulario.apellidos.select();
		   document.formulario.apellidos.focus();
		   return(0);
		  }
	 }
 }

function CompruebaCargo()
 {
  cadenas=document.formulario.cargo.value.split(' ');
  for (var i=0;i<cadenas.length;i++)
   cadenas[i]=cadenas[i].toLowerCase();
	for (var j=0;j<cadenas.length;j++)
	 {
	  for (var i=0;i<cadenas[j].length;i++)
	   if (EsCargo(cadenas[j].charAt(i))==-1)
	    {
		   alert('No has introducido un cargo válido, no se pueden introducir números o caracteres no alfabéticos');
			 document.formulario.cargo.select();
		   document.formulario.cargo.focus();
		   return(0);
		  }
	  if (cadenas[j].length<3&&cadenas.length==1)
	   {
	    alert('El cargo tiene menos de tres caracteres');
			document.formulario.cargo.select();
		  document.formulario.cargo.focus();
		  return(0);
	   }
	 }
 }

function CompruebaPoblacion()
 {
  cadenas=document.formulario.poblacion.value.split(' ');
  for (var i=0;i<cadenas.length;i++)
   cadenas[i]=cadenas[i].toLowerCase();
	for (var j=0;j<cadenas.length;j++)
	 {
	  for (var i=0;i<cadenas[j].length;i++)
	   if (EsCargo(cadenas[j].charAt(i))==-1)
	    {
		   alert('No has introducido una población válida, no se pueden introducir números o caracteres no alfabéticos');
			 document.formualrio.poblacion.select();
		   document.formulario.poblacion.focus();
		   return(0);
		  }
	  if (cadenas[j].length<3&&cadenas.length==1)
	   {
	    alert('La población tiene menos de tres caracteres');
			document.formulario.poblacion.select();
		  document.formulario.poblacion.focus();
		  return(0);
	   }
	 }
 }

function CompruebaProvincia()
 {
  cadenas=document.formulario.provincia.value.split(' ');
  for (var i=0;i<cadenas.length;i++)
   cadenas[i]=cadenas[i].toLowerCase();
	for (var j=0;j<cadenas.length;j++)
	 {
	  for (var i=0;i<cadenas[j].length;i++)
	   if (EsCargo(cadenas[j].charAt(i))==-1)
	    {
		   alert('No has introducido una provincia válida, no se pueden introducir números o caracteres no alfabéticos');
			 document.formualrio.provincia.select();
		   document.formulario.provincia.focus();
		   return(0);
		  }
	  if (cadenas[j].length<3&&cadenas.length==1)
	   {
	    alert('La provincia tiene menos de tres caracteres');
			document.formulario.provincia.select();
		  document.formulario.provincia.focus();
		  return(0);
	   }
	 }
 }

function CompruebaPais()
 {
  cadenas=document.formulario.pais.value.split(' ');
  for (var i=0;i<cadenas.length;i++)
   cadenas[i]=cadenas[i].toLowerCase();
	for (var j=0;j<cadenas.length;j++)
	 {
	  for (var i=0;i<cadenas[j].length;i++)
	   if (EsCar(cadenas[j].charAt(i))==-1)
	    {
		   alert('No has introducido un país válido, no se pueden introducir números o caracteres no alfabéticos');
			 document.formulario.pais.select();
		   document.formulario.pais.focus();
		   return(0);
		  }
	  if (cadenas[j].length<3&&cadenas.length==1)
	   {
	    alert('El país tiene menos de tres caracteres');
			document.formulario.pais.select();
		  document.formulario.pais.focus();
		  return(0);
	   }
	 }
 }
 
function CompruebaCorreo()
 {
  if(document.formulario.correo.value.search(/^[\w-\.]+@([\w-]+\.)+[\w-]{2,4}$/ig))
	 {
    alert("La cuenta de correo introducida no es válida");
    document.formulario.correo.select();
    document.formulario.correo.focus();
    return (0);
   }
 }
 
function CompruebaTelefono()
 {
	for (var i=0;i<document.formulario.telefono.value.length;i++)
	 if (EsNum(document.formulario.telefono.value.charAt(i))==-1)
	  {
		 alert('No has introducido un número de teléfono válido, sólo se pueden introducir dígitos decimales');
		 document.formulario.telefono.select();
		 document.formulario.telefono.focus();
		 return(0);
		}
	if (document.formulario.telefono.value.length<9)
	 {
	  alert('El número de teléfono tiene menos de nueve dígitos');
		document.formulario.telefono.select();
		document.formulario.telefono.focus();
		return(0);
	 }
 } 

function CompruebaMovil()
 {
  
  if (document.formulario.movil.value!='')
	 {
	  for (var i=0;i<document.formulario.movil.value.length;i++)
	   if (EsNum(document.formulario.movil.value.charAt(i))==-1)
	    {
		   alert('No has introducido un número de móvil válido');
			 document.formulario.movil.select();
		   document.formulario.movil.focus();
		   return(0);
		  }
	  if (document.formulario.movil.value.length<9)
	   {
	    alert('El número de móvil tiene menos de nueve dígitos, sólo se pueden introducir dígitos decimales');
			document.formualrio.movil.select();
		  document.formulario.movil.focus();
		  return(0);
	   }
	 }
 }

function CompruebaCodigo()
 {
	for (var i=0;i<document.formulario.codigo_postal.value.length;i++)
	 if (EsNum(document.formulario.codigo_postal.value.charAt(i))==-1)
	  {
		 alert('No has introducido un código postal válido válido, sólo se pueden introducir dígitos decimales');
		 document.formulario.codigo_postal.salect();
		 document.formulario.codigo_postal.focus();
		 return(0);
		}
	if (document.formulario.codigo_postal.value.length<5)
	 {
	  alert('El código postal tiene menos de cinco dígitos');
		document.formulario.codigo_postal.select();
		document.formulario.codigo_postal.focus();
		return(0);
	 }
 }
 
function valida()
{
 if (document.formulario.nombre.value=="")
  {
	 alert('Debes Rellenar el campo Nombre');
   return (0);
	}
 else
  if (CompruebaNombre()==0)
	 return(0);
 
 if (document.formulario.apellidos.value=="")
  {
   alert('Debes rellenar el campo Apellidos');
	 return(0);
	}
 else
  if (CompruebaApellido()==0)
	 return(0);
 
 if (document.formulario.empresa.value=="")
  {
   alert('Debes rellenar el campo Empresa');
	 return(0);
	}
 else
  if (document.formulario.empresa.value.length<2)
	 {
	  alert('No has introducido un nombre de empresa válido');
		document.formulario.empresa.select();
		document.formulario.empresa.focus();
		return(0);
	 }
 
 if (document.formulario.cargo.value=="")
  {
   alert('Debes rellenar el campo Cargo');
	 return(0);
	}
 else
  if (CompruebaCargo()==0)
	 return(0);
 
 if (document.formulario.correo.value=="")
  {
   alert('Debes rellenar el campo Correo Electrónico');
	 return(0);
	}
 else
  if (CompruebaCorreo()==0)
   return(0);
 
 if (document.formulario.telefono.value=="")
  {
   alert('Debes rellenar el campo Telefono');
	 return(0);
	}
 else
  if (CompruebaTelefono()==0)
   return(0);
 
 if (document.formulario.direccion.value=="")
  {
   alert('Debes rellenar el campo Dirección');
	 return(0);
	}
 else
  if (document.formulario.direccion.value.length<4)
	 {
	  alert('Has introducido una dirección no válida, tiene menos de 4 caracteres');
		document.formulario.direccion.select();
		document.formulario.direccion.focus();
		return(0);
	 }
 
 if (document.formulario.codigo_postal.value=="")
  {
   alert('Debes rellenar el campo Código Postal');
	 return(0);
	}
 else
  if (CompruebaCodigo()==0)
	 return(0);
 
 if (document.formulario.poblacion.value=="")
  {
   alert('Debes rellenar el campo Población');
	 return(0);
	}
 else
  if (CompruebaPoblacion()==0)
	 return(0);
 
 if (document.formulario.provincia.value=="")
  {
   alert('Debes rellenar el campo Provincia');
	 return(0);
	}
 else
  if (CompruebaProvincia()==0)
	 return(0);
 
 if (document.formulario.pais.value=="")
  {
   alert('Debes rellenar el campo Pais');
	 return(0);
	}
 else
  if (CompruebaPais()==0)
	 return(0);
	 
 if (CompruebaMovil()==0)
  return(0);
 document.formulario.submit();
}