Koha/koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-passwd.tt
Owen Leonard 50be1c4006 Bug 22561: Forgotten password requirements hint doesn't list all rules for new passwords
This patch modifies a few templates in the OPAC so that all available
information on password requirements is displayed for each case where
the patron is setting a password:

 - If the RequireStrongPassword system preference is set, a message
   should appear listing strong password requirements and minimum
   password length.
 - If RequireStrongPassword is not set, the message should only ask for
   a minimum password length.

To test, apply the patch and enable the PatronSelfRegistration and
OpacResetPassword preferences.

On the following pages, test with RequireStrongPassword both on and
off. The correct messages should appear.

 - OPAC -> Forgot password. Follow the process to reset your password
   until you reach the step where you are entering the new password.
 - OPAC -> Register here. Check the password section of the registration
   form.
 - OPAC -> Log in -> Change your password.

Signed-off-by: Liz Rea <wizzyrea@gmail.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
2019-03-28 11:59:57 +00:00

116 lines
5.7 KiB
Text

[% USE raw %]
[% USE Asset %]
[% USE Koha %]
[% INCLUDE 'doc-head-open.inc' %]
<title>[% IF ( LibraryNameTitle ) %][% LibraryNameTitle | html %][% ELSE %]Koha online[% END %] catalog &rsaquo; Change your password</title>
[% INCLUDE 'doc-head-close.inc' %]
[% BLOCK cssinclude %][% END %]
</head>
[% INCLUDE 'bodytag.inc' bodyid='opac-passwd' %]
[% INCLUDE 'masthead.inc' %]
<div class="main">
<ul class="breadcrumb">
<li><a href="/cgi-bin/koha/opac-main.pl">Home</a> <span class="divider">&rsaquo;</span></li>
<li><a href="/cgi-bin/koha/opac-user.pl">[% INCLUDE 'patron-title.inc' patron = logged_in_user %]</a> <span class="divider">&rsaquo;</span></li>
<li><a href="#">Change your password</a></li>
</ul>
<div class="container-fluid">
<div class="row-fluid">
<div class="span2">
<div id="navigation">
[% INCLUDE 'navigation.inc' IsPatronPage=1 %]
</div>
</div>
<div class="span10">
<div id="userpasswd">
<h3>Change your password </h3>
[% IF ( Error_messages ) %]
<div class="alert">
<h3>There was a problem with your submission</h3>
<p>
[% IF ( passwords_mismatch ) %]
Passwords do not match. Please re-type your new password.
[% END %]
[% IF password_too_short %]
Password must be at least [% minPasswordLength | html %] characters long.
[% END %]
[% IF password_too_weak %]
Password must contain at least one digit, one lowercase and one uppercase.
[% END %]
[% IF password_has_whitespaces %]
Password must not contain leading or trailing whitespaces.
[% END %]
[% IF ( WrongPass ) %]
Your current password was entered incorrectly. If this problem persists, please ask a librarian to reset your password for you.
[% END %]
</p>
</div>
[% END # /IF Error_messages %]
[% IF ( OpacPasswordChange ) %]
[% IF ( Ask_data ) %]
<form action="/cgi-bin/koha/opac-passwd.pl" name="mainform" id="mainform" method="post" autocomplete="off">
<fieldset>
[% IF ( Koha.Preference('RequireStrongPassword') ) %]
<div class="alert alert-info">Your password must contain at least [% Koha.Preference('minPasswordLength') | html %] characters, including UPPERCASE, lowercase and numbers.</div>
[% ELSE %]
<div class="alert alert-info">Your password must be at least [% Koha.Preference('minPasswordLength') | html %] characters long.</div>
[% END %]
<label for="Oldkey">Current password:</label> <input type="password" id="Oldkey" size="25" name="Oldkey" />
<label for="Newkey">New password:</label> <input type="password" id="Newkey" size="25" name="Newkey" />
<label for="Confirm">Re-type new password:</label> <input type="password" id="Confirm" size="25" name="Confirm" />
</fieldset>
<fieldset class="action"><input type="submit" value="Submit changes" class="btn" /> <a href="/cgi-bin/koha/opac-user.pl" class="cancel">Cancel</a></fieldset>
</form>
[% END # /IF Ask_data %]
[% ELSE %]
<div class="alert">You can't change your password.</div>
[% END # /IF OpacPasswordChange %]
[% IF ( password_updated ) %]
<div class="alert alert-success">
<h1>Password updated</h1>
Your password has been changed
</div>
<form action="/cgi-bin/koha/opac-user.pl" method="post" autocomplete="off">
<input type="hidden" name="borrowernumber" value="[% borrowernumber | html %]" />
<p><input type="submit" class="btn" value="Return to your record" /></p>
</form>
[% END # /IF password_updated %]
</div> <!-- / #userpasswd -->
</div> <!-- / .span10 -->
</div> <!-- / .row-fluid -->
</div> <!-- / .container-fluid -->
</div> <!-- / .main -->
[% INCLUDE 'opac-bottom.inc' %]
[% BLOCK jsinclude %]
[% Asset.js("lib/jquery/plugins/jquery.validate.min.js") | $raw %]
[% PROCESS 'password_check.inc' %]
[% PROCESS 'add_password_check' new_password => 'Newkey' %]
<script>
$(document).ready(function() {
$("#mainform").validate({
rules: {
Newkey: {
required: true,
password_strong: true,
password_no_spaces: true
},
Confirm: {
required: true,
password_match: true
}
}
});
});
</script>
[% END %]