From 6f39a02deaf20be2faacb56f3a46a267b7e7b97d Mon Sep 17 00:00:00 2001 From: Fridolin Somers Date: Tue, 9 May 2017 16:37:59 +0200 Subject: [PATCH] Bug 17240 - Allow processes that rely on background jobs run in Plack mode - followup 3 Followup 3 If not running in background mode, items are not displayed in result page in tools/batchMod.pl. Also the number of items and fields are missing in message. --- tools/batchMod.pl | 40 +++++++++++++++++++++++++--------------- 1 file changed, 25 insertions(+), 15 deletions(-) diff --git a/tools/batchMod.pl b/tools/batchMod.pl index 0ef4248..73ef4fb 100755 --- a/tools/batchMod.pl +++ b/tools/batchMod.pl @@ -113,20 +113,28 @@ if ($op eq "action") { my $marcitem; # Once the job is done - if ($completedJobID) { - # If we have a reasonable amount of items, we display them - if (scalar(@itemnumbers) <= ( C4::Context->preference("MaxItemsToDisplayForBatchDel") // 1000 ) ) { - $items_display_hashref=BuildItemsData(@itemnumbers); - } else { - # Else, we only display the barcode - my @simple_items_display = map {{ itemnumber => $_, barcode => (GetBarcodeFromItemnumber($_) or ""), biblionumber => (GetBiblionumberFromItemnumber($_) or "") }} @itemnumbers; - $template->param("simple_items_display" => \@simple_items_display); - } + if ($completedJobID || !$runinbackground) { + # If we have a reasonable amount of items, we display them + if (scalar(@itemnumbers) <= ( C4::Context->preference("MaxItemsToDisplayForBatchDel") // 1000 ) ) { + $items_display_hashref=BuildItemsData(@itemnumbers); + } else { + # Else, we only display the barcode + my @simple_items_display = map{ + { + itemnumber => $_, + barcode => (GetBarcodeFromItemnumber($_) or ""), + biblionumber => (GetBiblionumberFromItemnumber($_) or "") + } + } @itemnumbers; + $template->param("simple_items_display" => \@simple_items_display); + } + } - # Setting the job as done - my $job = C4::BackgroundJob->fetch($sessionID, $completedJobID); + if ($completedJobID) { + # Setting the job as done + my $job = C4::BackgroundJob->fetch($sessionID, $completedJobID); - # Calling the template + # Calling the template add_saved_job_results_to_template($template, $completedJobID); } else { @@ -200,9 +208,9 @@ if ($op eq "action") { } }; } + $modified_items++ if $modified; + $modified_fields += $modified; if ( $runinbackground ) { - $modified_items++ if $modified; - $modified_fields += $modified; $job->set({ modified_items => $modified_items, modified_fields => $modified_fields, @@ -507,7 +515,9 @@ if ($op eq "action") { deleted_items => $deleted_items, delete_records => $del_records, deleted_records => $deleted_records, - not_deleted_loop => \@not_deleted + not_deleted_loop => \@not_deleted, + modified_items => $modified_items, + modified_fields => $modified_fields, ); } -- 2.7.4