From 2b9f4a84d52b1672f13258cb098a57c7c164b6e9 Mon Sep 17 00:00:00 2001 From: Kyle M Hall Date: Fri, 14 Jun 2013 09:59:55 -0400 Subject: [PATCH] Bug 9673 - Track when items are marked as lost or withdrawn - QA Followup 3 - Clear 'on' fields when clearing statuses --- C4/Items.pm | 9 +++++++++ 1 files changed, 9 insertions(+), 0 deletions(-) diff --git a/C4/Items.pm b/C4/Items.pm index a4eaa34..facdcbb 100644 --- a/C4/Items.pm +++ b/C4/Items.pm @@ -537,6 +537,7 @@ sub ModItem { $item->{onloan} = undef if $item->{itemlost}; + # Only call GetItem if we need to set an "on" date field if ( $item->{itemlost} || $item->{wthdrawn} ) { my $pre_mod_item = GetItem( $item->{'itemnumber'} ); for my $field (qw( itemlost wthdrawn )) { @@ -553,6 +554,14 @@ sub ModItem { } } } + # If the field is defined but empty, we are removing and, + # and thus need to clear out the 'on' field as well + if ( defined( $item->{itemlost} ) && !$item->{itemlost} ) { + $item->{itemlost_on} = undef; + } + if ( defined( $item->{wthdrawn} ) && !$item->{wthdrawn} ) { + $item->{wthdrawn_on} = undef; + } _set_derived_columns_for_mod($item); _do_column_fixes_for_mod($item); -- 1.7.2.5