From fe2947c4b6e6e29dade91de63da2976bf4260326 Mon Sep 17 00:00:00 2001 From: Bill Erickson Date: Mon, 3 Aug 2015 14:03:52 -0400 Subject: [PATCH] LP#1481036 Ignore future backdates (part 2). Ensure that future backdates are successully ignored in the checkin API. The logic was in place to do this, but it failed to clear the values, resulting in using the future backdate anyway. Signed-off-by: Bill Erickson Signed-off-by: Ben Shum --- Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Circulate.pm | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Circulate.pm b/Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Circulate.pm index 3bb329d8a2..e910c70367 100644 --- a/Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Circulate.pm +++ b/Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Circulate.pm @@ -3645,12 +3645,14 @@ sub checkin_handle_backdate { $new_date->set_minute($original_date->minute()); if ($new_date >= DateTime->now) { # We can't say that the item will be checked in later...so assume someone's clock is wrong instead. - $bd = undef; + # $self->backdate() autoload handler ignores undef values. + # Clear the backdate manually. + $logger->info("circulator: ignoring future backdate: $new_date"); + delete $self->{backdate}; } else { - $bd = cleanse_ISO8601($new_date->datetime()); + $self->backdate(cleanse_ISO8601($new_date->datetime())); } - $self->backdate($bd); return undef; } -- 2.11.0