Bug 18025 - Expired password recovery links cause sql crash
authorLiz Rea <liz@catalyst.net.nz>
Tue, 31 Jan 2017 21:59:01 +0000 (21:59 +0000)
committerMason James <mtj@kohaaloha.com>
Wed, 22 Feb 2017 21:26:46 +0000 (10:26 +1300)
commit474fbf5f5622836f3a2275085a566b2f410090ab
tree4176e6a9acbfb9b697dc8e34fb2d778315ded934
parentef92d9668c2fe8827ec46a80b2a0c2792eaeb7b7
Bug 18025 - Expired password recovery links cause sql crash

When a user gets an email, but doesn't act or visit it within two days,
     attempting to create a new one causes a collision. We should just
     delete the old one, assuming they still want to reset their
     password.

To test:
create yourself a borrower with a userid and password.
Attempt a password recovery on the OPAC
update the entry in the database for that user to have an expired token
e.g. update borrower_password_recovery set valid_until = '2017-01-25
03:25:26' where borrowernumber = 12;
Attempt another password recovery operation - should error
apply the patch
Try it again - no error, new token is generated and additional email
with new link is sent.

Issue reproduced - is resolved by patch
Signed-off-by: Marc VĂ©ron <veron@veron.ch>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Mason James <mtj@kohaaloha.com>
Koha/Patron/Password/Recovery.pm
opac/opac-password-recovery.pl
t/db_dependent/Passwordrecovery.t