From dc16b9a031f0a757ed5a17e81f1f269a5a30847f Mon Sep 17 00:00:00 2001
From: Fridolin Somers <fridolin.somers@biblibre.com>
Date: Thu, 4 Oct 2018 15:39:27 +0200
Subject: [PATCH] Bug 21487: Disable CataloguingLog syspref in
UNIMARC_sync_date_created_with_marc_biblio.pl
Script UNIMARC_sync_date_created_with_marc_biblio.pl edits MARC record to define 099 $c and $d.
This should not be registered as a cataloguing change in action_logs table.
So script must disable CataloguingLog syspref (if enabled) during its process.
Test plan :
1) Don't apply the patch yet
2) Have the CataloguingLog system preference set to 'Log'
3) Create a new record
4) Count entries in action_logs table
5) Run : UNIMARC_sync_date_created_with_marc_biblio.pl --run -v
6) Check the CataloguingLog system preference is still 'Log'
7) Count entries in action_logs table => there are more
8) Apply the patch
9) Repeate from 3) to 6)
10) Count entries in action_logs table => there are the same
Signed-off-by: David Nind <david@davidnind.com>
---
.../maintenance/UNIMARC_sync_date_created_with_marc_biblio.pl | 11 +++++++++++
1 file changed, 11 insertions(+)
diff --git a/misc/maintenance/UNIMARC_sync_date_created_with_marc_biblio.pl b/misc/maintenance/UNIMARC_sync_date_created_with_marc_biblio.pl
index a46dc7b0f4..ec6076096e 100755
--- a/misc/maintenance/UNIMARC_sync_date_created_with_marc_biblio.pl
+++ b/misc/maintenance/UNIMARC_sync_date_created_with_marc_biblio.pl
@@ -12,6 +12,7 @@ BEGIN {
eval { require "$FindBin::Bin/../kohalib.pl" };
}
+use C4::Context;
use C4::Biblio;
use Getopt::Long;
@@ -207,6 +208,13 @@ sub process {
$dbh = C4::Context->dbh;
my $mod_count = 0;
+ # Disable the syspref cache so we can change logging settings
+ C4::Context->disable_syspref_cache();
+ # Save current CataloguingLog syspref value
+ my $CataloguingLog = C4::Context->preference('CataloguingLog');
+ # Disable logging
+ C4::Context->set_preference( 'CataloguingLog', 0 );
+
my $query = q{
SELECT biblionumber
FROM biblio
@@ -229,6 +237,9 @@ sub process {
}
$verbose and print "Number of modified biblios: " . $mod_count . "\n";
+
+ # Restore CataloguingLog
+ C4::Context->set_preference( 'CataloguingLog', $CataloguingLog );
}
if ( lc( C4::Context->preference('marcflavour') ) eq "unimarc" ) {
--
2.11.0