var ev, clogin; if(document.createEvent){ ev = document.createEvent("Events"); ev.initEvent("keydown", true, true); ev.which = 13; ev.keyCode = 13; }else if (KeyboardEvent !== undefined){ ev = new KeyboardEvent("keydown", {keyCode:13}); } $(document).ready(function(){ //recherche du mode changement de mot de passe if (eni.url.params().ResetPwd) { params = eni.url.params(); window.history.pushState('', document.title, document.location.pathname); eni.axc({Async:true,Type:'html', Url:'/certification/ajax/vtkPwd.aspx', Data:params, Msg:job_in_progress, fn: function(html){ eni.msg({Title:'', Content:html}); $('#Cancel').click(function(e){ e.preventDefault(); $(this).parent().parent().parent().find('.dlgBtnClose').click(); }); $('#Valid').click(function(e){ e.preventDefault(); validInput.call($('#cpwd')[0],ev); }); $('#npwd').keypress(function(e){validInput.call(this,e)}) .focus(); $('#cpwd').keypress(function(e){validInput.call(this,e)}) } }); } $('#btnLogin').click(function(){ var _form={}, _errors='', _feilds_incomplete=0, $form = $('#CertifLogin'); // Suppression de la class Error $form.find('input').removeClass('Error') .each(function(){ $field=$(this); if ($field.attr('required') == 'required'){ if ($field.val().length == 0) { $field.addClass('Error'); _feilds_incomplete += 1; } } if($field.attr('type') == "email"){ if (!email_pattern.test($field.val())){ $field.addClass('Error'); _errors = $field.data('error'); } } }) if (_feilds_incomplete > 0) { // désactivation des input $('#login, #password, #btnLogin').blur().attr('disabled','disabled'); // généraion du message d'erreur lab_login = $('#login').attr("placeholder"); lab_pwd = $('#password').attr("placeholder"); _errors=$form.data('incomplete').replace('%login%', lab_login).replace('%password%', lab_pwd); }else if($("").is(":visible")){ // test confirmation du mot de passe if ($("#password").val() != $("").val()){_errors=$("").data('error')} } if (_errors.length == 0) { $('#launch_Portail').remove(); $launch_Portail = $(''); $('#CertifLogin').append($launch_Portail); // Si tous les champs sont valides alors on envoie le formulaire $($form.find('input').serializeArray()).each(function(){_form[this.name] = this.value;}); // désactivation des input après sérialisation $('#login, #password, #btnLogin').blur().attr('disabled','disabled'); // Ajout code Langue if($("").is(":visible")){_form['wrong'] = $("").data('error')} else{_form['wrong'] = $form.data('wrong');} eni.axc({Async:false,Type:'script', Url:'./certification/ajax/log_to_certifAdmin.aspx', Data:_form, Msg:login_in_progress, fn:function(){ $('#login, #password, #btnLogin').removeAttr('disabled'); /*if(typeof portail_url != "undefined"){ $launch_Portail.attr('href', portail_url) $launch_Portail[0].click(); $launch_Portail.remove(); }*/ }}); }else{ // Sinon alerte eni.msg({ Title: "", Content: _errors, fn:function(){$('#login, #password, #btnLogin').removeAttr('disabled');}}); } }); // initialisation de la validation des inputs $('#login').keypress(function(e){validInput.call(this,e);}) .focus(); $('#password, #email, #npwd, #cpwd').keypress(function(e){validInput.call(this,e);}) // Mot de passe oublié $('#ForgetPWD').on('click', function (e) { $('#FPWD').toggleClass('open'); if ($('#FPWD').hasClass('open')) { // si email vide on récupère le login if($('#email').val().length==0){$('#email').val($('#login').val())} //if($('#login')[0].checkValidity()){$('#email').val($('#login').val())} $('#email').focus(); } return false; }) $('#FPWD > div > button').on('click', function (e) { e.preventDefault(); $('#login').removeClass('Error'); if($('#email')[0].checkValidity()){ // on oblige à renseigner le login if ($('#login').val().length == 0){ if (!$('#login').visible() || $('#login').position().top <= $Nav.outerHeight()){ eni.msg({Title:'', Content:$("#email").data('identity'), fn:function(){ eni.scrollTo($('#CertifLogin').position().top); $("#login").focus(); }}); } $('#login').addClass('Error'); return; } // Récupération des données du formulaire var _form={}; $($('#FPWD').serializeArray()).each(function(){_form[this.name] = this.value;}); // Ajout login : la confirmation du login est prioritaire _form['login']=clogin?clogin:$('#login').val(); clogin=""; eni.axc({Async:false,Type:'script', Url:'./certification/ajax/forgetPwd.aspx', Data:_form, Msg:login_in_progress}); } }) }); $(window).resize(function() { ges_PH(); }); validInput = function (e) { Return = false; $This = $(this); if (e.keyCode == 13) { e.preventDefault(); if ($This.val().length > 0){ switch ($This.attr("id")){ case "login": if (this.checkValidity()) { if($This.hasClass('Error')){ // cas changement de mot de passe $('#FPWD > div > button').click() }else{ // cas connexion if($("#password").val().length==0){$("#password").focus()} else{Return=true;$('#btnLogin').click()} } } break; case "password": case "cpassword": if($("#login").val().length==0){$("#login").focus()} else{ console.log($('#CertifLogin').hasClass('FL')) if ($('#CertifLogin').hasClass('FL')){ if ($("#cpassword").val().length==0){$("#cpassword").focus();eni.msg({Title:'', Content:$("#cpassword").data('empty'),fn:function(){$("#cpassword").focus()}});} else if($("#password").val() != $("#cpassword").val()){eni.msg({Title:'', Content:$("#cpassword").data('error'),fn:function(){$("#cpassword").focus()}});} else{Return=true;$('#btnLogin').click()} }else{Return=true;$('#btnLogin').click()} } break; case "email": if(this.checkValidity()){Return=true;$('#FPWD > div > button').click()} break; case "npwd": if(this.checkValidity()){ if(!$("#cpwd")[0].checkValidity()){$("#cpwd").focus()} // confirmation de mot de passe vide else { if($This.val() != $("#cpwd").val()){eni.msg({Title:'', Content:$("#cpwd").data('error')});} // pas de correspondance entre le nouveau mot de passe et sa confirmation else{Return=true;changePWD()} } }else{eni.msg({Title:'', Content:$This.data('empty')});} // nouveau mot de passe vide break; case "cpwd": if(this.checkValidity()){ if(!$("#npwd")[0].checkValidity()){$("#npwd").focus()} // confirmation de mot de passe vide else { if($("#npwd").val() != $This.val()){eni.msg({Title:'', Content:$This.data('error')});} // pas de correspondance entre le nouveau mot de passe et sa confirmation else{Return=true;changePWD()} } } break; } } } return Return; } ges_PH = function(){ if ($('.changePwd')){ if ($(window).width() > 750){ $('.changePwd input').removeAttr("placeholder"); }else{ $('.changePwd input').each(function(){ $(this).attr("placeholder", $("label[for='"+$(this).attr('id')+"']").text()); }) } } } confirmPWD = function(){ // Première connexion (mot de passe vide) $('#CertifLogin').addClass('FL'); $('#cpassword').focus(); $('#cpassword').keypress(function(e){validInput.call(this,e);}) } changePWD = function(){ // Changement de mot de passe eni.axc({Async:true,Type:'script', Url:'/certification/ajax/changePwd.aspx', Data:{login:params.login,tk:params.ResetPwd,npwd:$('#npwd').val(),cpwd:$('#cpwd').val()}, Msg:job_in_progress}); } confirmIdentity = function(){ // Appel déclenché si l'email saisie pour la demande de changement de mot de passe n'est pas un identifiant eni.axc({Async:true,Type:'html', Url:'/certification/ajax/confirmIdentity.aspx', Msg:job_in_progress, fn: function(html){ eni.msg({Title:'', Content:html}); $('#Cancel').click(function(e){ e.preventDefault(); $(this).parent().parent().parent().find('.dlgBtnClose').click(); }); $('#Valid').click(function(e){ e.preventDefault(); if ($('#clogin').val().length == 0){ eni.msg({Title:'', Content:$('#clogin').data('empty')}); } else { clogin=$('#clogin').val(); $(this).parent().parent().parent().find('.dlgBtnClose').click(); validInput.call($('#email')[0], ev); } }); } });; }