
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//Inicio de las Funciones para validar los formularios
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////


function ValidarFormulario(form)
{
	
	
	for(i=0;i<form.length;i++)
	{
	
		
		
		error = true;

		nombrecampo = form.elements[i].name;
		datos = form.elements[i].value;
		tam = form.elements[i].value.length;

//alert(nombrecampo,datos,tam);

//if (1) alert(nombrecampo,datos);

//Comprueba que no tiene los siguientes caracteres: ',",&,+ por seguridad.

		
		if (isCaracterPeligroso(datos))
			form1.error.value = "Error: Alguno de los caracteres introducidos no es correcto."

//Campos: Nombre, Apellidos, Poblacion, Provincia, Ciudad, País
//Si es el campo del formulario tiene las siguientes caracteristicas:
// No puede ser vacio
// Admite caracteres o espacios
// El tamaño no supera los 50 caracteres
		else if (nombrecampo == "nombre" || nombrecampo == "apellidos" || nombrecampo == "empresa" || nombrecampo == "contacto" || nombrecampo == "razonsocial" || nombrecampo == "poblacion" || nombrecampo == "provincia" || nombrecampo == "ciudad" || nombrecampo == "pais" )
		{
			if (isEmpty(datos))
				form1.error.value = "Error: El campo " + nombrecampo + " debe ser rellenado obligatoriamente."			
			else if(!isAlphabetic(datos,defaultEmptyOK))
				form1.error.value = "Error: El campo " + nombrecampo + " solo puede contener caracteres o espacios. Los acentos no están permitidos."
			else if (tam > 50)			
				form1.error.value = "Error: El campo " + nombrecampo + " no puede ser superior a 50 caracteres."
			else error = false;
			
		}

		
//Campos: Password, Passwordnuevo, Passwordnuevo2
//Si es el campo del formulario tiene las siguientes caracteristicas:
// No puede ser vacio
// Admite caracteres, numeros o espacios
// El tamaño no supera los 10 caracteres
		else if (nombrecampo == "password" || nombrecampo == "passwordnuevo" || nombrecampo == "passwordnuevo2")
		{
			if (isEmpty(datos))
				alert("Error: La contraseña debe ser rellenada obligatoriamente.");
			else if(!isAlphanumeric(datos,defaultEmptyOK))
				alert("Error: La contraseña solo puede contener carácteres o digitos.");
			else if (tam > 10)			
				alert("Error: La contraseña no puede ser superior a 10 caracteres.");
			else if (tam < 6)
				alert("Error: La contraseña debe contener al menos 6 caracteres.");
			else error = false;
		}
		
//Campos: Contrasena, Contrasena1, Contrasena2
//Si es el campo del formulario tiene las siguientes caracteristicas:
// No puede ser vacio
// Admite caracteres, numeros o espacios
// El tamaño no supera los 10 caracteres
		else if (nombrecampo == "contrasena" || nombrecampo == "contrasena1" || nombrecampo == "contrasena2")
		{
			if (isEmpty(datos))
				form1.error.value = "Error: El campo " + nombrecampo + " debe ser rellenado obligatoriamente."
			else if(!isAlphanumeric(datos,defaultEmptyOK))
				form1.error.value = "Error: El campo " + nombrecampo + " solo puede contener carácteres o digitos."
			else if (tam > 10)			
				form1.error.value = "Error: El campo " + nombrecampo + " no puede ser superior a 10 caracteres."
			else if (tam < 6)
				form1.error.value = "Error: El campo " + nombrecampo + " debe contener al menos 6 caracteres."
			else error = false;
		}		
		
//Campos: Direccion, Direccion1, Direccion2
//Si es el campo del formulario tiene las siguientes caracteristicas:
// No puede ser vacio
// Admite caracteres,numeros o espacios
// El tamaño no supera los 50 caracteres
		else if (nombrecampo == "direccion" || nombrecampo == "direccion1" || nombrecampo == "direccion2")
		{
			if (isEmpty(datos) && nombrecampo != "direccion2")
				form1.error.value = "Error: El campo " + nombrecampo + " debe ser rellenado obligatoriamente."
			else if (tam > 50)			
				form1.error.value = "Error: El campo " + nombrecampo + " no puede ser superior a 50 caracteres."
			else error = false;
		}
//Campos: Email
//Si es el campo del formulario tiene las siguientes caracteristicas:
// No puede ser vacio
// Comprueba que el email tenga '@', '.'
// El tamaño no supera los 50 caracteres
		else if (nombrecampo == "email" || nombrecampo == "email1" || nombrecampo == "email2")
		{
			if (isEmpty(datos))
				form1.error.value = "Error: El campo " + nombrecampo + " debe ser rellenado obligatoriamente."
			
			else if (!isEmail (datos,defaultEmptyOK))
				form1.error.value = "La dirección de email no es correcta"
		
			else if (tam > 50)			
				form1.error.value = "Error: El campo " + nombrecampo + " no puede ser superior a 50 caracteres."
				
			else error = false;
		}
		
		else if (nombrecampo == "email3")
		{
			if (isEmpty(datos))
				alert("Error: El campo Email debe ser rellenado obligatoriamente.");
			else if (!isEmail (datos,defaultEmptyOK))
				alert("La dirección de email no es correcta");
			else if (tam > 50)			
				alert("Error: El campo Email no puede ser superior a 50 caracteres.");
			else error = false;
		}


		
//Campos: Movil, Telefono
//Si es el campo del formulario tiene las siguientes caracteristicas:
// No puede ser vacio, excepto Movil
// Comprueba que los datos sean numeros.
// El tamaño sea de 9 caracteres
		else if (nombrecampo == "telefono" || nombrecampo == "movil")
		{
			if (isEmpty(datos) && (nombrecampo != "movil") )
				form1.error.value = "Error: El campo " + nombrecampo + " debe ser rellenado obligatoriamente."
			else if (!isInteger(datos,defaultEmptyOK) && tam == 9)
				form1.error.value = "Error: El numero de " + nombrecampo + " introducido no es correcto, debe contener nueve digitos."
			else if (tam != 9 && (nombrecampo != "movil"))			
				form1.error.value = "Error: El campo " + nombrecampo + " debe tener 9 digitos."
			else if (!isEmpty(datos) && (tam != 9) && (nombrecampo == "movil"))			
				form1.error.value = "Error: El campo " + nombrecampo + " debe tener 9 digitos."
			else error = false;
		}
//Campos: Nif
//Si es el campo del formulario tiene las siguientes caracteristicas:
// No puede ser vacio
// Comprueba que el Nif sea correcto
// El tamaño sea de 9 caracteres
		else if (nombrecampo == "nif")
		{
			if (isEmpty(datos))
				alert("Error: El campo '" + nombrecampo + "' debe ser rellenado obligatoriamente.");
			else if (!isNif(datos))
				alert("El NIF introducido no es correcto, debe contener ocho digitos más la letra y debe ser un Nif valido. Ejemplo: 48957125K");
			else if (tam != 9)			
				alert("Error: El campo '" + nombrecampo + "' debe tener ocho digitos más la letra del NIF. Ejemplo: 48957125K");
			else error = false;
		}
		
//Campos: Nif
//Si es el campo del formulario tiene las siguientes caracteristicas:
// No puede ser vacio
// Comprueba que el Nif sea correcto
// El tamaño sea de 9 caracteres
		else if (nombrecampo == "cif")
		{
			if (isEmpty(datos))
				form1.error.value ="Error: El campo " + nombrecampo + " debe ser rellenado obligatoriamente.";
			//else if (!isNif(datos))
				//alert("El NIF introducido no es correcto, debe contener ocho digitos más la letra y debe ser un Nif valido. Ejemplo: 48957125K");
			else if (tam != 9)			
				form1.error.value ="Error: El campo '" + nombrecampo + "' debe tener una letra más ocho digitos.";
			else error = false;
		}

//Campos: Cp->Codigo Postal
//Si es el campo del formulario tiene las siguientes caracteristicas:
// No puede ser vacio
// Comprueba que los datos sean numeros.
// El tamaño sea de 5 caracteres
		else if (nombrecampo == "cp")
		{
			if (isEmpty(datos))
				form1.error.value = "Error: El campo Código Postal debe ser rellenado obligatoriamente."
			else if (!isInteger(datos))
				form1.error.value = "El Código Postal introducido no es correcto, sólo puede contener dígitos."
			else if (tam != 5 && nombrecampo == "cp")			
				form1.error.value = "Error: El campo Código Postal debe tener cinco dígitos."
			
			else error = false;
		}		

// CONDICIONES
		
		else if (nombrecampo == "condiciones")
		{
			if(!form.elements[i].checked)
				form1.error.value = "Error: Debe aceptar las condiciones legales."
			
			else error = false;
		}


		else error = false;
//		else	// No es ninguno de los anteriores BORRAR!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
//			alert("Comentarle el tema al CABE.El campo '" + nombrecampo + "' f.lla.");

		if (error)
		{
			form.elements[i].focus();
			form.elements[i].select();

			return(error);
		}
	}
	
	return(error);
}
