// JavaScript Document var opciones = []; opciones.push([112,'Bicicleta normal','1925-06-02','2009-06-01',1,'http://www.mtbuxama.com/niskalo/autorizacion-menores.pdf']); opciones.push([113,'Bicicleta eléctrica','1925-06-02','2009-06-01',1,'http://www.mtbuxama.com/niskalo/autorizacion-menores.pdf']); function cr_agregarCorredor() { $.ajax( "/ajax/motor.php", { type: 'POST', cache:false, data : $("form").serialize(), dataType: "json"} ) .done(function(salida) { if (salida.error) { Swal.fire({icon: 'error', title: 'ERROR', text: salida.error, confirmButtonText: 'Aceptar'}); if (salida.focus) $("#"+salida.focus).addClass("is-invalid"); } else window.location.href="inscripcion.html?resumen"; }) .fail(function() { Swal.fire({icon: 'error', title: 'Error de comunicación', text: 'No hubo respuesta del servidor, inténtalo de nuevo dentro de unos minutos.', confirmButtonText: 'Aceptar'}); }) } function cr_comprobarForm() { var soymenor = false; var prueba = $("#cr_prueba").val(); $("#btnenviar").attr("disabled", "disabled"); if ($("input[name=u_sexo]:checked").val()!="M" && $("input[name=u_sexo]:checked").val()!="F") {cr_KO("sexoF");cr_KO("sexoM");} else {cr_OK("sexoF");cr_OK("sexoM");} if ($("#u_nombre").val().length <3) cr_KO("u_nombre"); else cr_OK("u_nombre"); if ($("#u_apellidos").val().length <=3) cr_KO("u_apellidos"); else cr_OK("u_apellidos"); if ($("#u_poblacion").val().length <=3) cr_KO("u_poblacion"); else cr_OK("u_poblacion"); if ($("#u_telefono").val().length <9 || !$("#u_telefono").val().match('^(0|[1-9][0-9]*)$')) cr_KO("u_telefono"); else cr_OK("u_telefono"); if ($("#u_correo").val().length>6) { var emailReg = /^([\w-\.]+@([\w-]+\.)+[\w-]{2,4})?$/; if(emailReg.test( $("#u_correo").val() )) cr_OK("u_correo"); else cr_KO("u_correo"); } else cr_KO("u_correo"); if ($("#u_nacimiento").val()) { var nacimiento = $("#u_nacimiento").val(); var autorizacion = ""; var puedecorrer = false; soymenor = nacimiento > "2007-06-01"; $.each (opciones, function (clave, valor) { //console.log(valor[0]+" "+prueba); if (valor[0] == prueba) { if (nacimiento >= valor[2] && nacimiento <= valor[3]) { puedecorrer = true; autorizacion = valor[5]; } //console.log(nacimiento+" "+valor[2]+" "+valor[3]+" ("+puedecorrer+") ("+autorizacion+")"); } }); if (!puedecorrer) { $("#u_nacimiento").next().html("Lo sentimos, no se permite la participación en la carrera seleccionada a participantes con la edad que has introducido."); cr_KO("u_nacimiento"); } else if (autorizacion && soymenor) { $("#cr_aviso_edad").html("Los menores de 18 años deben presentar una autorización firmada por el padre, madre o tutor que puedes DESCARGAR AQUÍ y entregarla antes de la salida."); $("#cr_aviso_edad").show(); cr_OK("u_nacimiento"); } else { $("#cr_aviso_edad").hide(); cr_OK("u_nacimiento"); } } else cr_KO("u_nacimiento"); if (!soymenor && !cr_nifvalido($("#u_dni").val())) cr_KO("u_dni"); else cr_OK("u_dni"); if (soymenor) { $("#u_dni").attr("placeholder", "Opcional"); } else { $("#u_dni").removeAttr("placeholder"); } if ($("#u_reservas").val()) cr_OK("u_reservas"); else cr_KO("u_reservas"); if ($("#u_talla").val()) cr_OK("u_talla"); else cr_KO("u_talla"); if ($("#aceptacion").is(":checked")) cr_OK("aceptacion"); else cr_KO("aceptacion"); if (!$("form :input").hasClass("is-invalid")) $("#btnenviar").removeAttr("disabled").removeClass("btn-outline-secondary").addClass("btn-success"); else $("#btnenviar").attr("disabled", "disabled").removeClass("btn-success").addClass("btn-outline-secondary"); } function cr_comprobarCodigo() { $.ajax( "/ajax/checkCodigo.php?dni="+$("#u_dni").val()+"&correo="+$("#u_correo").val()+"&codigo="+$("#codigo").val(), { dataType: "json", cache: false } ) .done ( function (salida) { if (!salida.error) { cr_OK("codigo"); $("form").submit(); return true; } else { cr_KO("codigo"); } }); } function cr_comprobarMenor() { if ($("#menor").prop("checked")) { $("#u_dni").attr("placeholder", "Opcional"); } else { $("#u_dni").removeAttr("placeholder"); } $("#u_dni").keyup(); } function cr_comprobarUsuario() { var dni = $("#u_dni").val(); var correo = $("#u_correo").val(); $("#btnenviar").html(' Procesando...'); $.ajax( "/ajax/checkDNI.php?dni="+dni+"&correo="+correo, { dataType: "html", cache: false } ) .done (function (html) { if (html != "") { //$("#dni").prop("readonly", true); //$("#correo").prop("readonly", true); $("#clickreserva_comprobarExiste").html(html); $("#codigo").keyup(function(e) { if ($("#codigo").val().length == 4) { $("#btnenviar").html('Continuar '); cr_OK("codigo"); $("#btnenviar").removeAttr("disabled"); } else { cr_KO("codigo"); $("#btnenviar").attr("disabled", "disabled"); } }); } }); } function cr_eliminar(corredor, seg,c) { if (confirm("¿Seguro que quieres eliminar este participante de la inscripción?")) { $.ajax( "/ajax/eliminar.php?corredor="+corredor+"&seg="+seg, { dataType: "json", cache: false } ) .done(function(salida) { if (salida.ok) { window.location.href = "inscripcion.html?resumen"; } else { alert("ERROR INESPERADO - No se pudo eliminar el corredor"); } }) .fail(function() { alert( "error 23423 enviando datos" ); }) } } function cr_nifvalido(value){ var validChars = 'TRWAGMYFPDXBNJZSQVHLCKET'; var nifRexp = /^[0-9]{8}[TRWAGMYFPDXBNJZSQVHLCKET]{1}$/i; var nieRexp = /^[XYZ]{1}[0-9]{7}[TRWAGMYFPDXBNJZSQVHLCKET]{1}$/i; var str = value.toString().toUpperCase(); if (!nifRexp.test(str) && !nieRexp.test(str)) return false; var nie = str .replace(/^[X]/, '0') .replace(/^[Y]/, '1') .replace(/^[Z]/, '2'); var letter = str.substr(-1); var charIndex = parseInt(nie.substr(0, 8)) % 23; if (validChars.charAt(charIndex) === letter) return true; return false; } function cr_KO(id){ $("#"+id).addClass("is-invalid").removeClass("is-valid"); } function cr_OK (id) { $("#"+id).addClass("is-valid").removeClass("is-invalid"); } // Numeric only control handler jQuery.fn.cr_solodni = function() { return this.each(function() { $(this).keydown(function(e) { var key = e.charCode || e.keyCode || 0; return ( key == 8 || //BORRAR key == 9 || //TABULADOR key == 17 || //CONTROL key == 67 || //c CTRL+C key == 86 || //v CTRL+V key == 88 || //x CTRL+X key == 110 || (key >= 36 && key <= 40) || // CURSORES (key >= 48 && key <= 57) || (key >= 65 && key <= 90) || (key >= 96 && key <= 105) ); }); }); };