﻿/* validar formulario */
function isEmpty(str) { 
	var strRE;
	strRE = new RegExp(); 
	strRE.compile('^[\s ]*$', 'gi'); 
	return strRE.test(str); 
} 

function isValidEmail(str) {
	var apos, dotpos;
	apos = str.indexOf("@");
	dotpos = str.lastIndexOf(".");
	if(apos<1||dotpos-apos<2) {
		return false;
	} else {
		return true;
	}
}

function isValidDNI(dni) {
	numero = dni.substr(0,dni.length-1);
	let = dni.substr(dni.length-1,1).toUpperCase();
	numero = numero % 23;
	letra = 'TRWAGMYFPDXBNJZSQVHLCKET';
	letra = letra.substring(numero,numero+1);
	if (letra!=let) {
		return false;
	} else {
		return true;
	}
}

function isNIE(nie) {
	nie = nie.toUpperCase();
	if(nie.length != 9) return false;
	var rexp = /^[A-Z]\d{7}[A-Z]$/;
	var resul = rexp.test(nie);
	return resul;
}

function isUnsignedInteger(s) {
	return (s.toString().search(/^[0-9]+$/) == 0);
}


function checkFormulario() {
	var hayqbuscas = false;
	var hayqvas = false;
	var hayqprefieres = false;
	for(i=1; i<=16; i++) {
		if((i<3) || (i>6 && i<9) || (i>12)) {
			if($("#formsorteo input[name='chk"+i+"']").attr('checked')) hayqbuscas = true;
		}
	}
	if(!hayqbuscas) {
		alert('Por favor, conteste el apartado ¿Qué buscas? para poder participar.');
		return false;	
	}
	for(i=17; i<=21; i++) {
		if($("#formsorteo input[name='chk"+i+"']").attr('checked')) hayqvas = true;
	}
	if(!hayqvas) {
		alert('Por favor, conteste el apartado ¿Con quién vas? para poder participar.');
		return false;	
	}
	for(i=22; i<=24; i++) {
		if($("#formsorteo input[name='chk"+i+"']").attr('checked')) hayqprefieres = true;
	}
	if(!hayqprefieres) {
		alert('Por favor, conteste el apartado ¿Qué prefieres? para poder participar.');
		return false;	
	}
	if(($('#fnombre').attr('value')) == 'Nombre') {
		alert('Por favor, rellene su nombre.');
		return false;
	}
	if(isEmpty($('#fnombre').attr('value'))) {
		alert('Por favor, rellene su nombre.');
		return false;
	}
	if(($('#fapellidos').attr('value')) == 'Apellidos') {
		alert('Por favor, rellene sus apellidos.');
		return false;
	}
	if(isEmpty($('#fapellidos').attr('value'))) {
		alert('Por favor, rellene sus apellidos.');
		return false;
	}
	if(!isValidDNI($('#fdni').attr('value'))) {
		if(!isNIE($('#fdni').attr('value'))) {
			alert('Por favor, introduzca un número de DNI válido (8 dígitos + letra) o NIE (letra + 7 dígitos + letra).');
			return false;
		}
	}
	if(!isValidEmail($('#femail').attr('value'))) {
		alert('Por favor, introduzca una dirección de email válida.');
		return false;
	}
	if(($('#fcpostal').attr('value')) == 'Código postal') {
		alert('Por favor, rellene su código postal.');
		return false;
	}
	if(($('#fcpostal').attr('value').length != 5) || (!isUnsignedInteger($('#fcpostal').attr('value')))) {
		alert('Por favor, rellene su código postal.');
		return false;
	}
	if(($('#ftelefono').attr('value')) == 'Teléfono') {
		alert('Por favor, rellene su número de teléfono.');
		return false;
	}
	if(($('#ftelefono').attr('value').length != 9) || (!isUnsignedInteger($('#ftelefono').attr('value')))) {
		alert('Por favor, rellene su número de teléfono.');
		return false;
	}
	if(($('#fedad').attr('value')) == 'Edad') {
		alert('Por favor, rellene su edad.');
		return false;
	}
	if(!isUnsignedInteger($('#fedad').attr('value'))) {
		alert('Por favor, rellene su edad.');
		return false;
	}
	if($('#flegal').attr('checked') == false) {
		alert('Debe aceptar el aviso legal para poder participar.');
		return false;
	}
	
	$('#fenviar').attr('disabled', true);
	$('#formsorteo').submit();
}

