Bug 7326: longoverdue.pl hardcoded to 366 days maximum
authorIan Walls <ian.walls@bywatersolutions.com>
Wed, 7 Dec 2011 00:12:04 +0000 (19:12 -0500)
committerPaul Poulain <paul.poulain@biblibre.com>
Thu, 15 Dec 2011 16:13:24 +0000 (17:13 +0100)
Adds --maxdays command line flag to longoverdue.pl to allow the user to specify
their own $endrange value.  Because sometimes 366 isn't enough!

Also adds help documentation for both --quiet and --maxdays params

Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
Simple change, works well

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
misc/cronjobs/longoverdue.pl

index 3843544..e3648d5 100755 (executable)
@@ -39,7 +39,7 @@ use Getopt::Long;
 
 my  $lost;  #  key=lost value,  value=num days.
 my ($charge, $verbose, $confirm, $quiet);
-my $endrange = 366;  # FIXME hardcoded - don't deal with anything overdue by more than this num days.
+my $endrange = 366;
 
 GetOptions( 
     'lost=s%'    => \$lost,
@@ -47,6 +47,7 @@ GetOptions(
     'confirm'    => \$confirm,
     'verbose'    => \$verbose,
     'quiet'      => \$quiet,
+    'maxdays=s'  => \$endrange
 );
 
 my $usage = << 'ENDUSAGE';
@@ -68,6 +69,11 @@ This script takes the following parameters :
     --confirm           confirm.  without this option, the script will report the number of affected items and
                         return without modifying any records.
 
+    --quiet             suppress summary output.
+
+    --maxdays           Specifies the end of the range of overdue days to deal with (defaults to 366).  This
+                        value is universal to all lost num days overdue passed.
+
   examples :
   $PERL5LIB/misc/cronjobs/longoverdue.pl --lost 30=1
     Would set LOST=1 after 30 days (up to one year), but not charge the account.