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 contenir les noms des auteurs en majuscules, et les informations d'etablissements en minuscules. Veuillez vous référer aux consignes de soumission en haut de la page.", 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("") }) });