View | Details | Raw Unified | Return to bug 12617
Collapse All | Expand All

(-)a/koha-tmpl/intranet-tmpl/prog/en/includes/password_check.inc (-1 / +11 lines)
Lines 5-16 Link Here
5
    var pwd_title = "";
5
    var pwd_title = "";
6
    var pattern_title = "";
6
    var pattern_title = "";
7
    var new_password_node_name = "[% new_password | html %]";
7
    var new_password_node_name = "[% new_password | html %]";
8
    var password_policy = "[% password_policy | html %]";
8
    [% IF Koha.Preference('RequireStrongPassword') %]
9
    [% IF Koha.Preference('RequireStrongPassword') %]
9
        pwd_title = _("Password must contain at least %s characters, including UPPERCASE, lowercase and numbers").format([% minPasswordLength | html %]);
10
        pwd_title = _("Password must contain at least %s characters, including UPPERCASE, lowercase and numbers").format([% minPasswordLength | html %]);
10
        pattern_regex = /(?=.*\d)(?=.*[a-z])(?=.*[A-Z]).{[% minPasswordLength | html %],}/;
11
        pattern_regex = /(?=.*\d)(?=.*[a-z])(?=.*[A-Z]).{[% minPasswordLength | html %],}/;
11
    [% ELSIF minPasswordLength %]
12
    [% ELSIF minPasswordLength && !password_policy %]
12
        pwd_title = _("Password must contain at least %s characters").format([% minPasswordLength | html %]);
13
        pwd_title = _("Password must contain at least %s characters").format([% minPasswordLength | html %]);
13
        pattern_regex = /.{[% minPasswordLength | html %],}/;
14
        pattern_regex = /.{[% minPasswordLength | html %],}/;
15
    [% ELSIF password_policy == 'simplenumeric' %]
16
        pwd_title = _("Password can only contain digits 0-9 and must be at least %s characters long").format([% minPasswordLength | html %]);
17
        pattern_regex = /(?=.*\d)([0-9]){[% minPasswordLength | html %],}/;
18
    [% ELSIF password_policy == 'alphanumeric' %]
19
        pwd_title = _("Password must contain both numbers and non-special characters and must be at least %s characters long").format([% minPasswordLength | html %]);
20
        pattern_regex = /(?=.*\d)(?=.*[a-zA-Z])([a-zA-Z0-9]){[% minPasswordLength | html %],}/;
21
    [% ELSIF password_policy == 'complex' %]
22
        pwd_title = _("Password must contain numbers, lower and uppercase characters and special characters and must be at least %s characters long").format([% minPasswordLength | html %]);
23
        pattern_regex = /(?=.*\d)(?=.*[a-z])(?=.*[A-Z])(?=.*[\|\[\]\{\}!@#\$%\^&\*\(\)_\-\+\?])([a-zA-Z0-9\|\[\]\{\}!@#\$%\^&\*\(\)_\-\+\?]){[% minPasswordLength | html %],}/;
14
    [% END %]
24
    [% END %]
15
    jQuery.validator.addMethod("password_strong", function(value, element){
25
    jQuery.validator.addMethod("password_strong", function(value, element){
16
        return this.optional(element) || value == '****' || pattern_regex.test(value);
26
        return this.optional(element) || value == '****' || pattern_regex.test(value);
(-)a/koha-tmpl/opac-tmpl/bootstrap/en/includes/password_check.inc (-1 / +11 lines)
Lines 4-15 Link Here
4
    var pwd_title = "";
4
    var pwd_title = "";
5
    var pattern_title = "";
5
    var pattern_title = "";
6
    var new_password_node_name = "[% new_password | html %]";
6
    var new_password_node_name = "[% new_password | html %]";
7
    var password_policy = "[% password_policy | html %]";
7
    [% IF Koha.Preference('RequireStrongPassword') %]
8
    [% IF Koha.Preference('RequireStrongPassword') %]
8
        pwd_title = _("Password must contain at least %s characters, including UPPERCASE, lowercase and numbers").format([% minPasswordLength | html %]);
9
        pwd_title = _("Password must contain at least %s characters, including UPPERCASE, lowercase and numbers").format([% minPasswordLength | html %]);
9
        pattern_regex = /(?=.*\d)(?=.*[a-z])(?=.*[A-Z]).{[% minPasswordLength | html %],}/;
10
        pattern_regex = /(?=.*\d)(?=.*[a-z])(?=.*[A-Z]).{[% minPasswordLength | html %],}/;
10
    [% ELSIF minPasswordLength %]
11
    [% ELSIF minPasswordLength && !password_policy %]
11
        pwd_title = _("Password must contain at least %s characters").format([% minPasswordLength | html %]);
12
        pwd_title = _("Password must contain at least %s characters").format([% minPasswordLength | html %]);
12
        pattern_regex = /.{[% minPasswordLength | html %],}/;
13
        pattern_regex = /.{[% minPasswordLength | html %],}/;
14
    [% ELSIF password_policy == 'simplenumeric' %]
15
        pwd_title = _("Password can only contain digits 0-9 and must be at least %s characters long").format([% minPasswordLength | html %]);
16
        pattern_regex = /(?=.*\d)([0-9]){[% minPasswordLength | html %],}/;
17
    [% ELSIF password_policy == 'alphanumeric' %]
18
        pwd_title = _("Password must contain both numbers and non-special characters and must be at least %s characters long").format([% minPasswordLength | html %]);
19
        pattern_regex = /(?=.*\d)(?=.*[a-zA-Z])([a-zA-Z0-9]){[% minPasswordLength | html %],}/;
20
    [% ELSIF password_policy == 'complex' %]
21
        pwd_title = _("Password must contain numbers, lower and uppercase characters and special characters and must be at least %s characters long").format([% minPasswordLength | html %]);
22
        pattern_regex = /(?=.*\d)(?=.*[a-z])(?=.*[A-Z])(?=.*[\|\[\]\{\}!@#\$%\^&\*\(\)_\-\+\?])([a-zA-Z0-9\|\[\]\{\}!@#\$%\^&\*\(\)_\-\+\?]){[% minPasswordLength | html %],}/;
13
    [% END %]
23
    [% END %]
14
    jQuery.validator.addMethod("password_strong", function(value, element){
24
    jQuery.validator.addMethod("password_strong", function(value, element){
15
        return this.optional(element) || pattern_regex.test(value);
25
        return this.optional(element) || pattern_regex.test(value);
(-)a/members/memberentry.pl (-1 / +3 lines)
Lines 184-189 unless ($category_type or !($categorycode)){ Link Here
184
}
184
}
185
$category_type="A" unless $category_type; # FIXME we should display a error message instead of a 500 error !
185
$category_type="A" unless $category_type; # FIXME we should display a error message instead of a 500 error !
186
186
187
my $passwordpolicy = $patron->category->passwordpolicy;
188
$template->param(password_policy => $passwordpolicy);
189
187
my $minpasslength = Koha::AuthUtils::min_password_length($categorycode);
190
my $minpasslength = Koha::AuthUtils::min_password_length($categorycode);
188
$template->param("minPasswordLength" => $minpasslength);
191
$template->param("minPasswordLength" => $minpasslength);
189
192
190
- 

Return to bug 12617