PageSourceSearch

https://www.therugbypaper.co.uk/wp-content/plugins/memberpress/js/zxcvbn-async.js?ver=6.7.1

js therugbypaper.co.uk collected 2026-10-02 04:25:46 UTC 4,050 bytes, 80 lines download raw bytes

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.