Bug 18616 - The "Add forgot password link to OPAC" should allow patrons to use their...
authorDavid Kuhn <techservspec@gmail.com>
Tue, 6 Jun 2017 16:38:07 +0000 (09:38 -0700)
committerMason James <mtj@kohaaloha.com>
Wed, 22 Nov 2017 12:44:00 +0000 (01:44 +1300)
Allow patrons to enter either their library card number or user name in the "Log in" box for password recovery.

Most patrons at our library use their card number to log in and are unaware of what their userid is. However there are some who have set a

customized userid and would prefer to use that. This patch would allow either to be entered for password recovery.

To test:
1. Enable the password recovery feature.
2. In the OPAC, click on "Forgot you password?" link and enter a valid library card number.
3. The error message "No account found with the provided information" appears.
4. Apply the patch.
5. Repeat step 2. The recovery email is now sent.

Note: Moved patch from 16711 back here and re-tested.
Signed-off-by: Marc VĂ©ron <veron@veron.ch>

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit e29163af4cde7ce33060716091726e6fa2eef65e)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
(cherry picked from commit 17085ea1cb67b8022cd912d0313fc8b3d48530da)
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>

opac/opac-password-recovery.pl

index 0ce183c..049425a 100755 (executable)
@@ -56,9 +56,9 @@ if ( $query->param('sendEmail') || $query->param('resendEmail') ) {
     my $borrower;
     my $search_results;
 
-    # Find the borrower by his userid or email
+    # Find the borrower by userid, card number, or email
     if ($username) {
-        $search_results = Koha::Patrons->search( { userid => $username } );
+        $search_results = Koha::Patrons->search( { -or => { userid => $username, cardnumber => $username } } );
     }
     elsif ($email) {
         $search_results = Koha::Patrons->search( { -or => { email => $email, emailpro => $email, B_email  => $email } } );