function VerifMinMaj(idDiv, MinMaj) { var phrase = $(idDiv).val(); var nbMin = (phrase.match(/[a-zàáâãäåçèéêëìíîïðòóôõöùúûüýÿ]/g) !== null) ? phrase.match(/[a-zàáâãäåçèéêëìíîïðòóôõöùúûüýÿ]/g).length : 0; var nbMaj = (phrase.match(/[A-Z]/g) !== null) ? phrase.match(/[A-Z]/g).length : 0; TotalCar = (nbMin + nbMaj); PercMin = (nbMin !== 0 && TotalCar !== 0) ? parseInt(nbMin * 100 / TotalCar) : 0; PercMaj = (nbMaj !== 0 && TotalCar !== 0) ? parseInt(nbMaj * 100 / TotalCar) : 0; if (MinMaj === 'minuscule') { return PercMin; } if (MinMaj === 'majuscule') { return PercMaj; } } function VerifFormatAuteurs() { ChampAuteurs = $.trim($('#auteurs').val()); ArrayAuteur = ChampAuteurs.split('\n'); if (ArrayAuteur.length < 2) { return false; } ListeAuteurs = ArrayAuteur[0]; ArrayListeAuteurs = ListeAuteurs.split(',') for (i = 0; i < ArrayListeAuteurs.length; i++) { if ($.trim(ArrayListeAuteurs[i]) !== '') { if (!regAuteurs($.trim(ArrayListeAuteurs[i]))) { return false } } } for (i = 1; i < ArrayAuteur.length; i++) { if ($.trim(ArrayAuteur[i]) !== '') { if (!regEtablissement($.trim(ArrayAuteur[i]))) { return false; } } } return true; } function regAuteurs(Auteur) { // var regex = /(.+[ ]?[(][0-9]+[)][ , ]?[(]?[0-9]?[)]?)/; var regex = /([A-Z-]{1,3}\.[ ]?[A-Z-]+[ ]?[(][0-9-]+[)][ ]?[,]?[ ]?)/; return (regex.test(Auteur)) ? true : false; } function regEtablissement(Etablissement) { var regex = /^([(][0-9]+[)].+)$/gm; return (regex.test(Etablissement)) ? true : false ; } function PourcentMinuscule(phrase) { var nbMin = (phrase.match(/[a-zàáâãäåçèéêëìíîïðòóôõöùúûüýÿ]/g) !== null) ? phrase.match(/[a-zàáâãäåçèéêëìíîïðòóôõöùúûüýÿ]/g).length : 0; var nbMaj = (phrase.match(/[A-Z]/g) !== null) ? phrase.match(/[A-Z]/g).length : 0; TotalCar = (nbMin + nbMaj); PercMin = (nbMin !== 0 && TotalCar !== 0) ? parseInt(nbMin * 100 / TotalCar) : 0; return PercMin; } function PourcentMajuscule(idDiv) { return VerifMinMaj(idDiv, 'majuscule'); } $(function() { $("#formulaire_soumission").append(''); $("#bt_annuler,#bt_valider").removeAttr("disabled"); $("#bt_valider").attr("type", "submit"); $("#email, #email_confirme").bind('paste', function(e){ Notification("copier/coller interdit"); return false; }); $("#titre").on('keyup', function(event) { var len = $(this).val().length; $("#caracteres_titre").val(len); }); $("#auteurs").on('keyup', function(event) { var len = $(this).val().length; $("#caracteres_auteurs").val(len); }); $("#texte").on('keyup', function(event) { var typedWords = $.trim($(this).val()).split(' ').length; $("#nbr").html(typedWords); }); // Jquery Validate Pour modification de Soumssion $("#formulaire_soumission #bt_annuler").click(function() { window.location.href = 'index.html'; }); $.validator.addMethod("pourcentMin", function(value, element) { return this.optional(element) || (PourcentMinuscule(value) > 10); }, "La date doit-etre au format JJ/MM/AAAA." ); $.validator.addMethod("textOnly", function(value, element) { return this.optional(element) || /^[a-z]+$/i.test(value); }, "Alpha Characters Only." ); $.validator.addMethod("AuteursFormat", function(value, element) { return this.optional(element) || VerifFormatAuteurs(); }, "Format Auteurs." ); $.validator.addMethod("wordCount", function(value, element, params) { var typedWords = jQuery.trim(value).split(' ').length; if(typedWords <= params[0]) { return true; } },"Only {0} words allowed." ); $('#formulaire_soumission').validate({ errorClass: "erreur_champs_form", onclick: true, ignore: "", rules: { titre: { required: true, maxlength: 400, pourcentMin: true }, auteurs: { required: true, maxlength: 850, pourcentMin: true, AuteursFormat:true }, nom_orateur: { required: true }, prenom_orateur: { required: true }, nom: { required: true }, prenom: { required: true }, email: { required: true, email:true }, email_confirme : { required: true, equalTo : "#email" }, categorie1 : { required: true }, texte : { required : true, wordCount : [450] } }, messages: { titre: { required: "Le champ 'Titre de la soumission' est obligatoire.", maxlength: "Le champ 'Titre de la soumission' est limité à {0} caractères", pourcentMin: "Le champ 'Titre de la soumission' doit être en minuscules" }, auteurs: { required: "Le champ 'Liste des auteurs' est obligatoire.", maxlength: "Le champ 'Liste des auteurs' est limité à {0} caractères", pourcentMin: "Le champ 'Liste des auteurs' doit être en minuscules", AuteursFormat: "Veuillez vérifier le format du champ 'Auteurs'." }, nom_orateur: { required: "Le champ 'Nom de l'orateur' est obligatoire." }, prenom_orateur: { required: "Le champ 'Prénom de l'orateur' est obligatoire." }, nom: { required: "Le champ 'Nom du correspondant' est obligatoire." }, prenom: { required: "Le champ 'Prénom du correspondant' est obligatoire." }, email : { required : "Le champ 'Adresse mail' est obligatoire.", email : "Veuillez entrer une adresse mail valide." }, email_confirme : { required : "Le champ 'Confirmation E-mail' est obligatoire.", equalTo : "Les champs 'adresse mail' et 'confirmation d'adresse mail' sont differents." }, categorie1 : { required : "Le champ 'Choix thématique' est obligatoire." }, texte : { required : "Le champ 'Texte de la soumission' est obligatoire.", wordCount : 'Le texte de la soumission est limité à {0} mots' } }, errorPlacement: function(error, element) { }, submitHandler: function(form) { jConfirm('Confirmez-vous l\'envoi de cette soumission ?', 'Confirmation', function(r) { if(r){ $("#formulaire_soumission").append(''); form.submit(); } }); }, invalidHandler: function(form, validator) { var errors = validator.numberOfInvalids(); if (errors) { $.alerts.okButton = ' ok '; jAlert(validator.errorList[0].message, "attention"); $("#" + validator.errorList[0].element.id).focus(); } } }); var Code_Mail $("#saisie_mail").click(function(){ $("#email_control").val($.trim($("#email_control").val())); var mail = $.trim($("#email_control").val()); if($.trim(mail)==''){ $.alerts.okButton = ' ok '; jAlert("Veuillez indiquer votre adresse email", "attention"); return false; } $.blockUI({message:'Patientez...'}); var d = new Date(); $.post("/soumission_mail_.php",{ time : d.getMilliseconds(), type : 1, mail : mail },function(data){ $.unblockUI(); if(data.validation==0){ $.alerts.okButton = ' ok '; jAlert("Cette adresse n'est pas une adresse mail valide", "attention"); Code_Mail = null }else{ $('.div_display').toggleClass("div_play"); $("#Num_mail").html(" N° "+data.num_mail); //$("#code_mail").val(data.code_mail); Code_Mail = window.atob(data.code_mail) $("#code1,#code2,#code3,#code4").val(""); $("#code1").focus(); } },'json'); }); $("#valide_code").click(function(){ code_mail =Code_Mail; un = Left(code_mail,1); deux = Mid(code_mail,1,1); trois = Mid(code_mail,2,1); quatre = Right(code_mail,1); code1 = $("#code1").val()+$("#code2").val()+$("#code3").val()+$("#code4").val() code2 = un+deux+trois+quatre if (code1!=code2){ $(".couleur_alerte").show(); }else{ $("#div_grise").attr("style","display:none"); $("#email").val($("#email_control").val()); $("#email_confirme").val($("#email_control").val()); } }) $("#verification").click(function(){ $("#email_control").val(''); $("#div_code").attr("class","div_display"); $("#email_control").focus(); }) $("#code1").keyup(function(){ if($(this).val().length==1){ $("#code2").focus(); } }) $("#code2").keyup(function(){ if($(this).val().length==1){ $("#code3").focus(); } }) $("#code3").keyup(function(){ if($(this).val().length==1){ $("#code4").focus(); } }) $("#code1").click(function(){ $("#code1").val("") }) $("#code2").click(function(){ $("#code2").val("") }) $("#code3").click(function(){ $("#code3").val("") }) $("#code4").click(function(){ $("#code4").val("") }) });