From cb8895a5fd95efde5ecf0cfb934a8c0db82744e4 Mon Sep 17 00:00:00 2001 From: Jonathan Druart Date: Tue, 17 Mar 2020 16:59:44 +0100 Subject: [PATCH] Bug 24846: Update items.onloan with the new due date Signed-off-by: Donna Bachowski Signed-off-by: Martin Renvoize --- tools/batch_extend_due_dates.pl | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/tools/batch_extend_due_dates.pl b/tools/batch_extend_due_dates.pl index 5f0001df1c..e79e5bdeb3 100755 --- a/tools/batch_extend_due_dates.pl +++ b/tools/batch_extend_due_dates.pl @@ -24,6 +24,7 @@ use CGI; use C4::Auth qw( get_template_and_user ); use C4::Output qw( output_html_with_http_headers ); +use C4::Items qw( ModItem ); use Koha::Checkouts; use Koha::DateUtils qw( dt_from_string ); @@ -126,14 +127,15 @@ elsif ( $op eq 'modify' ) { my $checkouts = Koha::Checkouts->search( { issue_id => { -in => \@issue_ids } } ); while ( my $checkout = $checkouts->next ) { - if ($new_hard_due_date) { - $checkout->date_due($new_hard_due_date)->store; - } - else { - my $dt = dt_from_string( $checkout->date_due ) - ->add( days => $due_date_days ); - $checkout->date_due($dt)->store; - } + my $new_due_date = $new_hard_due_date + || dt_from_string( $checkout->date_due )->add( days => $due_date_days ); + + # Update checkout's due date + $checkout->date_due($new_due_date)->store; + + # Update items.onloan + ModItem( { onloan => $new_due_date->strftime('%Y-%m-%d %H:%M') }, + undef, $checkout->itemnumber ); } $template->param( -- 2.39.5