From 3a97e256d43a5a126da975df88b30ae6ae87a896 Mon Sep 17 00:00:00 2001 From: Lucas Gass Date: Fri, 16 Jul 2021 16:00:44 +0000 Subject: [PATCH] Bug 28717: Add logging logic to koha-news.pl To test: 1. have some news items 2. make sure NewsLog is turned on 3. Add, modify, and delete some news 4. Check the action logs, nothing is logged 5. Apply patch 6. do step 3 again 7. now changes should be logged 8. make sure you try deleting multiple news items at once and confirm that all deletions are logged Signed-off-by: Owen Leonard --- .../prog/en/modules/tools/viewlog.tt | 2 +- tools/koha-news.pl | 16 ++++++++++++++++ 2 files changed, 17 insertions(+), 1 deletion(-) 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 3b0886d369..6ea33bed70 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/tools/viewlog.tt +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/tools/viewlog.tt @@ -362,7 +362,7 @@ [% IF ( loopro.module == 'CIRCULATION' ) %] Item [% loopro.barcode | html %] [% ELSE %] - [% IF loopro.module == "SYSTEMPREFERENCE" || loopro.module == "REPORTS" || loopro.module == "OPACNEWS" %] + [% IF loopro.module == "SYSTEMPREFERENCE" || loopro.module == "REPORTS" || loopro.module == "NEWS" %]
[% loopro.info | trim | html %]
diff --git a/tools/koha-news.pl b/tools/koha-news.pl index ef615a4e0d..452ce40b06 100755 --- a/tools/koha-news.pl +++ b/tools/koha-news.pl @@ -30,6 +30,7 @@ use C4::Output qw( output_html_with_http_headers ); use C4::Languages qw( getTranslatedLanguages ); use Koha::DateUtils qw( dt_from_string output_pref ); use Koha::News; +use C4::Log qw(logaction); my $cgi = CGI->new; @@ -115,6 +116,10 @@ elsif ( $op eq 'add' ) { branchcode => $branchcode, borrowernumber => $borrowernumber, })->store; + #log news addition + if (C4::Context->preference("NewsLog")) { + logaction('NEWS', 'ADD' , undef, $lang . ' | ' . $content); + } print $cgi->redirect("/cgi-bin/koha/tools/koha-news.pl"); } else { @@ -134,10 +139,21 @@ elsif ( $op eq 'edit' ) { branchcode => $branchcode, })->store; } + #log news modification + if (C4::Context->preference("NewsLog")) { + logaction('NEWS', 'MODIFY' , undef, $lang . ' | ' . $content); + } print $cgi->redirect("/cgi-bin/koha/tools/koha-news.pl"); } elsif ( $op eq 'del' ) { my @ids = $cgi->multi_param('ids'); + #log news deletion then delete it + if (C4::Context->preference("NewsLog")) { + foreach my $newsid ( @ids ) { + my $n = Koha::News->find( $newsid ); + logaction('NEWS', 'DELETE', undef, $n->lang . ' | ' . $n->content ); + } + } Koha::News->search({ idnew => \@ids })->delete; print $cgi->redirect("/cgi-bin/koha/tools/koha-news.pl"); } -- 2.20.1