From 84ace2444d95a4363c790a75ad036f9bd575e338 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 --- C4/Letters.pm | 5 ++--- 1 files changed, 2 insertions(+), 3 deletions(-) diff --git a/C4/Letters.pm b/C4/Letters.pm index 863da75..3564119 100644 --- a/C4/Letters.pm +++ b/C4/Letters.pm @@ -802,11 +802,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 }); -- 1.7.2.5