Bug 17663 - DBRev 16.06.00.048
[koha.git] / misc / cronjobs / batch_anonymise.pl
index 857171b..c90842f 100755 (executable)
@@ -4,21 +4,22 @@
 #
 # This file is part of Koha.
 #
-# Koha is free software; you can redistribute it and/or modify it under the
-# terms of the GNU General Public License as published by the Free Software
-# Foundation; either version 2 of the License, or (at your option) any later
-# version.
+# Koha is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 3 of the License, or
+# (at your option) any later version.
 #
-# Koha is distributed in the hope that it will be useful, but WITHOUT ANY
-# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
-# A PARTICULAR PURPOSE.  See the GNU General Public License for more details.
+# Koha is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
 #
-# You should have received a copy of the GNU General Public License along
-# with Koha; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+# You should have received a copy of the GNU General Public License
+# along with Koha; if not, see <http://www.gnu.org/licenses>.
 
 use strict;
 use warnings;
+use Carp;
 
 BEGIN {
 
@@ -30,12 +31,12 @@ BEGIN {
 
 use C4::Context;
 use C4::Circulation;
-use C4::Dates;
 use Date::Calc qw(
   Today
   Add_Delta_Days
 );
 use Getopt::Long;
+use C4::Log;
 
 sub usage {
     print STDERR <<USAGE;
@@ -44,6 +45,7 @@ Usage: $0  --days DAYS  [-h|--help]
    -v --verbose       gives a little more information
    -h --help          prints this help message, and exits, ignoring all
                       other options
+Note: If the system preference 'AnonymousPatron' is not defined, NULL will be used.
 USAGE
     exit $_[0];
 }
@@ -65,12 +67,15 @@ if ( !$days  ) {
     usage(1);
 }
 
+cronlogaction();
+
 my ($year,$month,$day) = Today();
 my ($newyear,$newmonth,$newday) = Add_Delta_Days ($year,$month,$day,(-1)*$days);
 my $formatdate = sprintf "%4d-%02d-%02d",$newyear,$newmonth,$newday;
 $verbose and print "Checkouts before $formatdate will be anonymised.\n";
 
-my $rows = AnonymiseIssueHistory($formatdate);
+my ($rows, $err_history_not_deleted) = AnonymiseIssueHistory($formatdate);
+carp "Anonymisation of reading history failed." if ($err_history_not_deleted);
 $verbose and print "$rows checkouts anonymised.\n";
 
 exit(0);