Bug 17229: Check if patron is expired in CanItemBeReserved
This way, calls to ILS-DI HoldTitle and HoldItem do this check too Added test plan to commit message : -Set Syspref BlockExpiredPatronOpacActions to "ON", -Set a patron's category variable "Block expired patrons" to "Follow SysPref" or -"Block" (ideally test both). -Get the id of a patron from this category (ie : 1234). -Set this patron's expiration date to a date earlier than today. -Get a biblionumber which can be reserved (ie : 5678). Put the following string in your webbrowser (replacing OpacBaseUrl, 1234 and 5678 by your own values) : http://[OpacBaseUrl]/cgi-bin/koha/ilsdi.pl?service=HoldTitle&patron_id=1234&bib_id=5678&request_location='127.0.0.1' Should not create a new hold for the patron and report an error. Signed-off-by: Brendan Gallagher <brendan@bywatersolutions.com> Signed-off-by: David Nind <david@davidnind.com> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com> Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
This commit is contained in:
parent
a369a9c8c1
commit
9c3f267350
|
|
@ -728,9 +728,13 @@ sub HoldTitle {
|
|||
my $patron = Koha::Patrons->find( $borrowernumber );
|
||||
return { code => 'PatronNotFound' } unless $patron;
|
||||
|
||||
|
||||
# If borrower is restricted return an error code
|
||||
return { code => 'PatronRestricted' } if $patron->is_debarred;
|
||||
|
||||
# Check for patron expired, category and syspref settings
|
||||
return { code => 'PatronExpired' } if ($patron->category->effective_BlockExpiredPatronOpacActions && $patron->is_expired);
|
||||
|
||||
# Get the biblio record, or return an error code
|
||||
my $biblionumber = $cgi->param('bib_id');
|
||||
my $biblio = Koha::Biblios->find( $biblionumber );
|
||||
|
|
@ -839,6 +843,9 @@ sub HoldItem {
|
|||
# If borrower is restricted return an error code
|
||||
return { code => 'PatronRestricted' } if $patron->is_debarred;
|
||||
|
||||
# Check for patron expired, category and syspref settings
|
||||
return { code => 'PatronExpired' } if ($patron->category->effective_BlockExpiredPatronOpacActions && $patron->is_expired);
|
||||
|
||||
# Get the biblio or return an error code
|
||||
my $biblionumber = $cgi->param('bib_id');
|
||||
my $biblio = Koha::Biblios->find( $biblionumber );
|
||||
|
|
|
|||
Loading…
Reference in New Issue