From 25b92745fc6c7dcf6258e432c496a2a797b7ebfc Mon Sep 17 00:00:00 2001 From: Bill Erickson Date: Wed, 29 Oct 2014 17:06:23 -0400 Subject: [PATCH] KMAIN-160: Shelf Expire Timestamp Cross-port: d73e70c --- Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Holds.pm | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Holds.pm b/Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Holds.pm index ff0815b036..4ba9c3ac42 100644 --- a/Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Holds.pm +++ b/Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Holds.pm @@ -39,6 +39,7 @@ use OpenSRF::Utils::Cache; use OpenSRF::Utils::JSON; my $apputils = "OpenILS::Application::AppUtils"; my $U = $apputils; +my $tz = DateTime::TimeZone::Local->TimeZone(); __PACKAGE__->register_method( method => "test_and_create_hold_batch", @@ -1137,6 +1138,15 @@ sub set_hold_shelf_expire_time { " with closed date, pushing expire time to $expire_time"); } + $expire_time->truncate( to => 'day'); + $expire_time->add(days => 1); + my $temp_expire_time = $expire_time->clone(); + $temp_expire_time->set_time_zone($tz); + if($temp_expire_time->is_dst()) { + $expire_time->set(hour => '06', minute => '59', second => '00'); + } else { + $expire_time->set(hour => '07', minute => '59', second => '00'); + } $hold->shelf_expire_time($expire_time->strftime('%FT%T%z')); return undef; } -- 2.11.0