Bug 28015: Fix inventory for timeformat=12h

Inventory explodes with the following stacktrace if timeformat is set to 12h

Invalid value passed, datelastseen=2021-04-09 12:00 AM expected type is date at /usr/share/perl5/Exception/Class/Base.pm line 88
        Exception::Class::Base::throw('Koha::Exceptions::Object::BadValue', 'type', 'date', 'value', '2021-04-09 12:00 AM', 'property', 'datelastseen') called at /kohadevbox/koha/Koha/Object.pm line 196
        Koha::Object::catch {...} ('DBIx::Class::Exception=HASH(0x557a052baeb0)') called at /usr/share/perl5/Try/Tiny.pm line 124
        Try::Tiny::try('CODE(0x557a051931d8)', 'Try::Tiny::Catch=REF(0x557a052bfc30)') called at /kohadevbox/koha/Koha/Object.pm line 206
        Koha::Object::store('Koha::Item=HASH(0x557a0521a048)') called at /kohadevbox/koha/Koha/Item.pm line 202
        Koha::Item::store('Koha::Item=HASH(0x557a0521a048)') called at /kohadevbox/koha/tools/inventory.pl line 220

Test plan:
Set TimeFormat to 12h
Use the inventory
=> Confirm that it's working with this patch applied

Signed-off-by: Owen Leonard <oleonard@myacpl.org>

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit 21ea89d774)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
This commit is contained in:
Jonathan Druart 2021-04-09 11:22:11 +02:00 committed by Fridolin Somers
parent a8dfd51a86
commit 8d5a3f7564
1 changed files with 4 additions and 4 deletions

View File

@ -151,8 +151,8 @@ my @errorloop;
my $moddatecount = 0;
if ( ($uploadbarcodes && length($uploadbarcodes) > 0) || ($barcodelist && length($barcodelist) > 0) ) {
my $dbh = C4::Context->dbh;
my $date = dt_from_string( scalar $input->param('setdate') );
$date = output_pref ( { dt => $date, dateformat => 'iso' } );
my $date = $input->param('setdate');
my $date_dt = dt_from_string($date);
my $strsth = "select * from issues, items where items.itemnumber=issues.itemnumber and items.barcode =?";
my $qonloan = $dbh->prepare($strsth);
@ -209,7 +209,7 @@ if ( ($uploadbarcodes && length($uploadbarcodes) > 0) || ($barcodelist && length
my $item = Koha::Items->find({barcode => $barcode});
if ( $item ) {
# Modify date last seen for scanned items, remove lost status
$item->set({ itemlost => 0, datelastseen => $date })->store;
$item->set({ itemlost => 0, datelastseen => $date_dt })->store;
my $item_unblessed = $item->unblessed;
$moddatecount++;
unless ( $dont_checkin ) {
@ -231,7 +231,7 @@ if ( ($uploadbarcodes && length($uploadbarcodes) > 0) || ($barcodelist && length
}
}
}
$template->param( date => $date );
$template->param( date => output_pref ( { str => $date, dateformat => 'iso' } ) );
$template->param( errorloop => \@errorloop ) if (@errorloop);
}