1//Load the larger zxcvbn.js file asynchronously 2(function(){var a;a=function(){var a,b;b=document.createElement("script");b.src=MeprZXCVBN.script_url;b.type="text/javascript";b.async=!0;a=document.getElementsByTagName("script")[0];return a.parentNode.insertBefore(b,a)};null!=window.attachEvent?window.attachEvent("onload",a):window.addEventListener("load",a,!1)}).call(this); 3 4function mepr_score_it($el) { 5 //console.log(zxcvbn($el.val()).score); 6 var score = zxcvbn($el.val()).score; 7 8 if($el.val().length == 0) { 9 $el.closest('form').find('.mp-password-strength-display').attr('class', 'mp-password-strength-display mp-nopass'); 10 $el.closest('form').find('.mp-password-strength-display').html(MeprZXCVBN.indicator + '<br/><small>' + MeprZXCVBN.required + '</small>'); 11 $el.closest('form').find('.mp-pass-strength').val('0'); 12 } else { 13 switch(score) { 14 case 0: 15 $el.closest('form').find('.mp-password-strength-display').attr('class', 'mp-password-strength-display mp-weakpass'); 16 $el.closest('form').find('.mp-password-strength-display').html(MeprZXCVBN.very_weak + '<br/><small>' + MeprZXCVBN.required + '</small>'); 17 $el.closest('form').find('.mp-pass-strength').val('0'); 18 break; 19 case 1: 20 $el.closest('form').find('.mp-password-strength-display').attr('class', 'mp-password-strength-display mp-weakpass'); 21 $el.closest('form').find('.mp-password-strength-display').html(MeprZXCVBN.weak + '<br/><small>' + MeprZXCVBN.required + '</small>'); 22 $el.closest('form').find('.mp-pass-strength').val('1'); 23 break; 24 case 2: 25 $el.closest('form').find('.mp-password-strength-display').attr('class', 'mp-password-strength-display mp-mediumpass'); 26 $el.closest('form').find('.mp-password-strength-display').html(MeprZXCVBN.medium + '<br/><small>' + MeprZXCVBN.required + '</small>'); 27 $el.closest('form').find('.mp-pass-strength').val('2'); 28 break; 29 case 3: 30 $el.closest('form').find('.mp-password-strength-display').attr('class', 'mp-password-strength-display mp-strongpass'); 31 $el.closest('form').find('.mp-password-strength-display').html(MeprZXCVBN.strong + '<br/><small>' + MeprZXCVBN.required + '</small>'); 32 $el.closest('form').find('.mp-pass-strength').val('3'); 33 break; 34 case 4: 35 $el.closest('form').find('.mp-password-strength-display').attr('class', 'mp-password-strength-display mp-strongpass'); 36 $el.closest('form').find('.mp-password-strength-display').html(MeprZXCVBN.very_strong + '<br/><small>' + MeprZXCVBN.required + '</small>'); 37 $el.closest('form').find('.mp-pass-strength').val('4'); 38 break; 39 default: 40 $el.closest('form').find('.mp-password-strength-display').attr('class', 'mp-password-strength-display mp-nopass'); 41 $el.closest('form').find('.mp-password-strength-display').html(MeprZXCVBN.indicator + '<br/><small>' + MeprZXCVBN.required + '</small>'); 42 $el.closest('form').find('.mp-pass-strength').val('0'); 43 break; 44 } 45 } 46} 47 48jQuery(function($) { 49 //Signup forms 50 function mepr_check() { 51 if(typeof zxcvbn !== 'undefined') { 52 if($('.mepr-password').length && $('.mepr-password').val().length > 0) { 53 mepr_score_it($('.mepr-password')); 54 } 55 } else { 56 setTimeout(mepr_check, 100); 57 } 58 } 59 mepr_check(); 60 61 var selectors = '.mepr-password, .mepr-new-password, .mepr-forgot-password'; 62 63 document.body.addEventListener('keyup', function (e) { 64 if(e.target && e.target.matches && e.target.matches(selectors)) { 65 mepr_score_it($(e.target)); 66 } 67 }); 68 69 document.body.addEventListener('paste', function (e) { 70 if(e.target && e.target.matches && e.target.matches(selectors) && (e.clipboardData || window.clipboardData)) { 71 e.preventDefault(); 72 e.target.value = (e.clipboardData || window.clipboardData).getData('text'); 73 mepr_score_it($(e.target)); 74 } 75 }); 76 77 $(document).on('change', selectors, function(e) { 78 mepr_score_it($(e.target)); 79 }); 80});
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.