Bugzilla – Attachment 19080 Details for
Bug 9673
Track when items are marked as lost or withdrawn
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
Bug 9673 - Track when items are marked as lost or withdrawn - QA Followup
Bug-9673---Track-when-items-are-marked-as-lost-or-.patch (text/plain), 2.22 KB, created by
Kyle M Hall
on 2013-06-17 15:58:40 UTC
(
hide
)
Description:
Bug 9673 - Track when items are marked as lost or withdrawn - QA Followup
Filename:
MIME Type:
Creator:
Kyle M Hall
Created:
2013-06-17 15:58:40 UTC
Size:
2.22 KB
patch
obsolete
>From 93fb1552bb57b56f53b62ff7ad02a0db49e3a1d2 Mon Sep 17 00:00:00 2001 >From: Kyle M Hall <kyle@bywatersolutions.com> >Date: Thu, 21 Mar 2013 07:18:34 -0700 >Subject: [PATCH] Bug 9673 - Track when items are marked as lost or withdrawn - QA Followup > >--- > C4/Items.pm | 32 ++++++++++++++++++++++++++------ > 1 files changed, 26 insertions(+), 6 deletions(-) > >diff --git a/C4/Items.pm b/C4/Items.pm >index b7d6055..f705fd2 100644 >--- a/C4/Items.pm >+++ b/C4/Items.pm >@@ -30,8 +30,10 @@ use MARC::Record; > use C4::ClassSource; > use C4::Log; > use List::MoreUtils qw/any/; >+use DateTime::Format::MySQL; > use Data::Dumper; # used as part of logging item record changes, not just for > # debugging; so please don't remove this >+use Koha::DateUtils qw/dt_from_string/; > > use vars qw($VERSION @ISA @EXPORT); > >@@ -535,16 +537,34 @@ sub ModItem { > > $item->{onloan} = undef if $item->{itemlost}; > >- for my $field ( qw( itemlost wthdrawn ) ) { >- if ( defined( $item->{$field} ) ) { >- if ( $item->{$field} ) { >- $item->{$field . '_on'} = DateTime::Format::MySQL->format_datetime( DateTime->now() ); >- } else { >- $item->{$field . '_on'} = undef; >+ >+ my @fields = qw( itemlost wthdrawn ); >+ >+ # 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 (@fields) { >+ if ( defined( $item->{$field} ) ) { >+ unless ( $pre_mod_item->{$field} ) { >+ if ( $item->{$field} ) { >+ $item->{ $field . '_on' } = >+ DateTime::Format::MySQL->format_datetime( >+ dt_from_string() ); >+ } >+ } > } > } > } > >+ # If the field is defined but empty, we are removing and, >+ # and thus need to clear out the 'on' field as well >+ for my $field (@fields) { >+ if ( defined( $item->{$field} ) && !$item->{$field} ) { >+ $item->{ $field . '_on' } = undef; >+ } >+ } >+ >+ > _set_derived_columns_for_mod($item); > _do_column_fixes_for_mod($item); > # FIXME add checks >-- >1.7.2.5
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
|
Splinter Review
Attachments on
bug 9673
:
15567
|
15890
|
16002
|
16003
|
16032
|
16033
|
16642
|
16643
|
16644
|
16645
|
16646
|
18031
|
18032
|
18033
|
18034
|
19013
|
19014
|
19079
|
19080
|
19120
|
19121
|
19483
|
19484
|
19485
|
19486
|
19487
|
19488
|
19489
|
19490
|
19492
|
21730
|
21731
|
22690
|
22691