From 032c30d3b96afd5bd7f4984dda2e596c85a214f1 Mon Sep 17 00:00:00 2001 From: Kyle M Hall Date: Thu, 1 Oct 2015 12:59:26 -0400 Subject: [PATCH] Bug 14937 - Expiration date for holds based onReservesMaxPickUpDelay should not require ExpireReservesMaxPickUpDelay C4::Letters::_parseletter will replace reserves.expirationdate with the date a hold will be marked as problematic ( holds over ) if both ReservesMaxPickUpDelay and ExpireReservesMaxPickUpDelay are enabled. There is no reason this feature needs to rely on ExpireReservesMaxPickUpDelay as there are many libraries that would like to send the last day to pick up a hold in notices, but would rather deal with the expired waiting holds manually rather than have Koha cancel them automatically. Test Plan: 1) Apply this patch 2) Set ReservesMaxPickUpDelay to 7 3) Disable ExpireReservesMaxPickUpDelay 4) Add reserves.expirationdate to your HOLD notice 5) Fill a hold for a patron 6) View the message, not that reserves.expirationdate is replaced with the date the hold will be marked as problematic Signed-off-by: Karl Holton Signed-off-by: Jonathan Druart --- C4/Letters.pm | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/C4/Letters.pm b/C4/Letters.pm index 6f148a9..bc60bc3 100644 --- a/C4/Letters.pm +++ b/C4/Letters.pm @@ -807,11 +807,10 @@ sub _parseletter { my @waitingdate = split /-/, $values->{'waitingdate'}; $values->{'expirationdate'} = ''; - if( C4::Context->preference('ExpireReservesMaxPickUpDelay') && - C4::Context->preference('ReservesMaxPickUpDelay') ) { + if ( C4::Context->preference('ReservesMaxPickUpDelay') ) { my $dt = dt_from_string(); $dt->add( days => C4::Context->preference('ReservesMaxPickUpDelay') ); - $values->{'expirationdate'} = output_pref({ dt => $dt, dateonly => 1 }); + $values->{'expirationdate'} = output_pref( { dt => $dt, dateonly => 1 } ); } $values->{'waitingdate'} = output_pref({ dt => dt_from_string( $values->{'waitingdate'} ), dateonly => 1 }); -- 2.1.0