function validaNIF(cif)
{
	par = 0
	non = 0
	letras="ABCDEFGHKLMNPQS"
	let=cif.charAt(0)

	if(!isNaN(let)){
		nif=cif
  		return validar(nif)
 	}

	for (zz=2;zz<8;zz+=2){
  		par = par+parseInt(cif.charAt(zz))
  	}

	for (zz=1;zz<9;zz+=2){
  		nn = 2*parseInt(cif.charAt(zz))
  		if (nn > 9) nn = 1+(nn-10)
  			non = non+nn
	}

	parcial = par + non
	control = (10 - ( parcial % 10))

	if (control==10) control=0
	if (control!=cif.charAt(8)){
  		return false
  	}
	return true
}

function validar(abc)
{
	dni=abc.substring(0,abc.length-1)
	let=abc.charAt(abc.length-1)
	if (!isNaN(let)){
  		return false
 	}
	else
 	{
  		cadena="TRWAGMYFPDXBNJZSQVHLCKET"
  		posicion = dni % 23
  		letra = cadena.substring(posicion,posicion+1)
  		if (letra!=let.toUpperCase()){
    		return false
   		}
 	}
 	
	return true
}

function validaCorreo(correo)
{
	var filter=/^[A-Za-z.][A-Za-z0-9._]*@[A-Za-z0-9_]+\.[A-Za-z0-9_.]+[A-za-z]$/;

	if (filter.test(correo)){
		return true;
	}
	else{
		return false;
	}
		
}

function validarContacto(){

	var salidaError = "";
	var formulario = document.forms[0];
	
	if(formulario.tNombre.value == ''){
		salidaError = salidaError + 'Debe de introducir su nombre\n';		
	}

	if(formulario.tApellidos.value == ''){
		salidaError = salidaError + 'Debe de introducir sus apellidos\n';		
	}
		
	if(formulario.tEMail.value == ''){
		salidaError = salidaError + 'Debe de introducir su correo electronico\n';		
	}
		
	if(formulario.tTelefono.value == ''){
		salidaError = salidaError + 'Debe de introducir su teléfono\n';		
	}else if(isNaN(formulario.tTelefono.value)){
		salidaError = salidaError + 'El teléfono introducido es incorrecto\n';				
	}
	
	if(isNaN(formulario.tFax.value)){
		salidaError = salidaError + 'El fax es incorrecto\n';		
	}
	
	if(formulario.tCiudad.value == ''){
		salidaError = salidaError + 'Debe de introducir su ciudad\n';		
	}
	
	if(formulario.tCodProvincia.value == ''){
		salidaError = salidaError + 'Debe de introducir su provincia\n';		
	}
	
	if(formulario.tPais.value == ''){
		salidaError = salidaError + 'Debe de introducir el pais\n';	
	}
	
	if(formulario.tEMail.value != ''){
		if (!validaCorreo(formulario.tEMail.value)){
			salidaError = salidaError + 'El correo electronico es incorrecto\n';
		}
	}
	
	if(formulario.cFactura.checked){
		
		if(formulario.fNombre.value ==''){
			salidaError = salidaError + 'Factura: Debe de introducir su nombre o razón social\n';
		}

		if(formulario.fDNI.value ==''){
			salidaError = salidaError + 'Factura: Debe de introducir su DNI o NIF\n';
		}

		if(formulario.fDireccion.value ==''){
			salidaError = salidaError + 'Factura: Debe de introducir su dirección\n';
		}
		
		if(formulario.fCodPostal.value ==''){
			salidaError = salidaError + 'Factura: Debe de introducir su código postal\n';
		}
		
		if(formulario.fCiudad.value ==''){
			salidaError = salidaError + 'Factura: Debe de introducir su ciudad\n';
		}
		
		if(formulario.fCodProvincia.value ==''){
			salidaError = salidaError + 'Factura: Debe de introducir su provincia\n';
		}
		
		if(formulario.fPais.value ==''){
			salidaError = salidaError + 'Factura: Debe de introducir su pais\n';
		}
		
	}
	
	if (salidaError != ""){
		alert(salidaError);
	}else{
		formulario.submit();
	}
}

function validarImporte(){

	var salidaError = "";
	var formulario = document.forms[0];
	
	if(formulario.tNombre.value == ''){
		salidaError = salidaError + 'Debe de introducir su nombre\n';		
	}

	if(formulario.tApellidos.value == ''){
		salidaError = salidaError + 'Debe de introducir sus apellidos\n';		
	}
		
	if(formulario.tEMail.value == ''){
		salidaError = salidaError + 'Debe de introducir su correo electronico\n';		
	}
		
	if(formulario.tTelefono.value == ''){
		salidaError = salidaError + 'Debe de introducir su teléfono\n';		
	}else if(isNaN(formulario.tTelefono.value)){
		salidaError = salidaError + 'El teléfono introducido es incorrecto\n';				
	}
	
	if(isNaN(formulario.tFax.value)){
		salidaError = salidaError + 'El fax es incorrecto\n';		
	}
		
	if(formulario.tDireccion.value == ''){
		salidaError = salidaError + 'Debe de introducir su dirección\n';		
	}
	
	if(formulario.tCodPostal.value == '' || isNaN(formulario.tCodPostal.value)){
		salidaError = salidaError + 'Debe de introducir su código postal\n';		
	}else if(isNaN(formulario.tCodPostal.value)){
		salidaError = salidaError + 'El código postal introducido es incorrecto\n';				
	}
	
	if(formulario.tNumero.value == ''){
		salidaError = salidaError + 'Debe de introducir su número\n';		
	}
	
	if(formulario.tCiudad.value == ''){
		salidaError = salidaError + 'Debe de introducir su ciudad\n';		
	}
	
	if(formulario.tCodProvincia.value == ''){
		salidaError = salidaError + 'Debe de introducir su provincia\n';		
	}
	
	if(formulario.tPais.value == ''){
		salidaError = salidaError + 'Debe de introducir el pais\n';	
	}
	
	if(formulario.tDNI.value != ''){
		if (!validaNIF(formulario.tDNI.value)){
			salidaError = salidaError + 'El NIF/CIF es incorrecto\n';
		}
	}
	
	if(formulario.tEMail.value != ''){
		if (!validaCorreo(formulario.tEMail.value)){
			salidaError = salidaError + 'El correo electronico es incorrecto\n';
		}
	}
	
	if(formulario.tImporte.value == ''){
		salidaError = salidaError + 'Debe de introducir un importe\n';	
	}
	else{
		imp = formulario.tImporte.value;
		
		imp = imp.replace(',','.');
		if(isNaN(imp)){
			alert('El importe introducido es incorrecto');
		}
		else{
			formulario.tImporte.value = imp;
		}
	}
	
	if (salidaError != ""){
		alert(salidaError);
	}else{
		formulario.submit();
	}
}

function ocultarMotrarFactura(){
	
	if (document.getElementById('cFactura').checked){
		
		document.getElementById('fNombre').disabled = "";
		document.getElementById('fDNI').disabled = "";
		document.getElementById('fDireccion').disabled = "";
		document.getElementById('fCodPostal').disabled = "";
		document.getElementById('fCiudad').disabled = "";
		document.getElementById('fCodProvincia').disabled = "";
		document.getElementById('fPais').disabled = "";
		document.getElementById('fComentario').disabled = "";
	

	}else{
		
		document.getElementById('fNombre').disabled = "true";
		document.getElementById('fDNI').disabled = "true";
		document.getElementById('fDireccion').disabled = "true";
		document.getElementById('fCodPostal').disabled = "true";
		document.getElementById('fCiudad').disabled = "true";
		document.getElementById('fCodProvincia').disabled = "true";
		document.getElementById('fPais').disabled = "true";
		document.getElementById('fComentario').disabled = "true";

	}
								
}

