From 8399790f0bc938b117b392d05c054baed26f172d Mon Sep 17 00:00:00 2001 From: Jacob O'Mara Date: Tue, 4 Nov 2025 18:02:57 +0000 Subject: [PATCH] Bug 17387: add logging for biblio/item restore This adds RESTORE action for biblios and items to the action log --- Koha/Old/Biblio.pm | 5 +++++ Koha/Old/Item.pm | 5 +++++ koha-tmpl/intranet-tmpl/prog/en/includes/action-logs.inc | 2 ++ .../intranet-tmpl/prog/en/includes/biblio-view-menu.inc | 2 +- koha-tmpl/intranet-tmpl/prog/en/modules/tools/viewlog.tt | 2 +- 5 files changed, 14 insertions(+), 2 deletions(-) diff --git a/Koha/Old/Biblio.pm b/Koha/Old/Biblio.pm index df6bd29c2ba..754f0b0316d 100644 --- a/Koha/Old/Biblio.pm +++ b/Koha/Old/Biblio.pm @@ -19,6 +19,8 @@ use Modern::Perl; use base qw(Koha::Object); +use C4::Context; +use C4::Log qw( logaction ); use Koha::Database; use Koha::Biblio; use Koha::Biblioitem; @@ -188,6 +190,9 @@ sub restore { my $indexer = Koha::SearchEngine::Indexer->new( { index => $Koha::SearchEngine::BIBLIOS_INDEX } ); $indexer->index_records( $new_biblio->biblionumber, "specialUpdate", "biblioserver" ); + logaction( "CATALOGUING", "RESTORE", $new_biblio->biblionumber, "biblio", undef, $new_biblio ) + if C4::Context->preference("CataloguingLog"); + return $new_biblio; } diff --git a/Koha/Old/Item.pm b/Koha/Old/Item.pm index 22371b7a09f..12b0a8b2ff8 100644 --- a/Koha/Old/Item.pm +++ b/Koha/Old/Item.pm @@ -19,6 +19,8 @@ use Modern::Perl; use base qw(Koha::Object); +use C4::Context; +use C4::Log qw( logaction ); use Koha::Biblio; use Koha::Biblios; use Koha::Exceptions; @@ -86,6 +88,9 @@ sub restore { my $indexer = Koha::SearchEngine::Indexer->new( { index => $Koha::SearchEngine::BIBLIOS_INDEX } ); $indexer->index_records( $new_item->biblionumber, "specialUpdate", "biblioserver" ); + logaction( "CATALOGUING", "RESTORE", $new_item->itemnumber, "item", undef, $new_item ) + if C4::Context->preference("CataloguingLog"); + return $new_item; } diff --git a/koha-tmpl/intranet-tmpl/prog/en/includes/action-logs.inc b/koha-tmpl/intranet-tmpl/prog/en/includes/action-logs.inc index b863662511d..c8dddde5850 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/includes/action-logs.inc +++ b/koha-tmpl/intranet-tmpl/prog/en/includes/action-logs.inc @@ -55,6 +55,8 @@ Delete [% CASE 'MODIFY' %] Modify + [% CASE 'RESTORE' %] + Restore [% CASE 'ISSUE' %] Checkout [% CASE 'RETURN' %] diff --git a/koha-tmpl/intranet-tmpl/prog/en/includes/biblio-view-menu.inc b/koha-tmpl/intranet-tmpl/prog/en/includes/biblio-view-menu.inc index dd32ca07a2d..adb5d1c377e 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/includes/biblio-view-menu.inc +++ b/koha-tmpl/intranet-tmpl/prog/en/includes/biblio-view-menu.inc @@ -81,7 +81,7 @@ [%- IF ( CAN_user_tools_view_system_logs ) -%]
  • - Modification log + Modification log
  • [%- END -%] diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/tools/viewlog.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/tools/viewlog.tt index 6e434a5c67f..1358e8bcc22 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/tools/viewlog.tt +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/tools/viewlog.tt @@ -147,7 +147,7 @@ [% END %] - [% FOREACH actx IN [ 'ADD' 'DELETE' 'MODIFY' 'ISSUE' 'RETURN' 'RENEW' 'CREATE' 'CANCEL' 'FILL' 'SUSPEND' 'RESUME' 'ADDCIRCMESSAGE' 'MODCIRCMESSAGE' 'DELCIRCMESSAGE' 'STATUS_CHANGE' 'PATRON_NOTICE' 'CHANGE PASS' 'RESET PASS' 'Run' 'End' 'PATRON_MERGE' 'EDIT_MAPPINGS' 'RESET_MAPPINGS' 'ADD_BASKET' 'MODIFY_BASKET' 'MODIFY_BASKET_HEADER' 'MODIFY_BASKET_USERS' 'CLOSE_BASKET' 'APPROVE_BASKET' 'REOPEN_BASKET' 'CANCEL_ORDER' 'CREATE_ORDER' 'MODIFY_ORDER' 'CREATE_INVOICE_ADJUSTMENT' 'UPDATE_INVOICE_ADJUSTMENT' 'DELETE_INVOICE_ADJUSTMENT' 'RECEIVE_ORDER' 'MODIFY_BUDGET' 'MODIFY_FUND' 'CREATE_FUND' 'DELETE_FUND' 'ACQUISITION CLAIM' 'ACQUISITION ORDER' 'OVERDUE' 'EXPIRE' 'CREATE_RESTRICTION' 'MODIFY_RESTRICTION' 'DELETE_RESTRICTION' 'MODIFY_CARDNUMBER' 'RESET 2FA' ] %] + [% FOREACH actx IN [ 'ADD' 'DELETE' 'MODIFY' 'RESTORE' 'ISSUE' 'RETURN' 'RENEW' 'CREATE' 'CANCEL' 'FILL' 'SUSPEND' 'RESUME' 'ADDCIRCMESSAGE' 'MODCIRCMESSAGE' 'DELCIRCMESSAGE' 'STATUS_CHANGE' 'PATRON_NOTICE' 'CHANGE PASS' 'RESET PASS' 'Run' 'End' 'PATRON_MERGE' 'EDIT_MAPPINGS' 'RESET_MAPPINGS' 'ADD_BASKET' 'MODIFY_BASKET' 'MODIFY_BASKET_HEADER' 'MODIFY_BASKET_USERS' 'CLOSE_BASKET' 'APPROVE_BASKET' 'REOPEN_BASKET' 'CANCEL_ORDER' 'CREATE_ORDER' 'MODIFY_ORDER' 'CREATE_INVOICE_ADJUSTMENT' 'UPDATE_INVOICE_ADJUSTMENT' 'DELETE_INVOICE_ADJUSTMENT' 'RECEIVE_ORDER' 'MODIFY_BUDGET' 'MODIFY_FUND' 'CREATE_FUND' 'DELETE_FUND' 'ACQUISITION CLAIM' 'ACQUISITION ORDER' 'OVERDUE' 'EXPIRE' 'CREATE_RESTRICTION' 'MODIFY_RESTRICTION' 'DELETE_RESTRICTION' 'MODIFY_CARDNUMBER' 'RESET 2FA' ] %] [% IF actions.grep(actx).size %]