Bug 4257: Make advance notices actually go out by avoiding null selects
authorJ. David Bavousett <dbavousett@ptfs.com>
Tue, 23 Feb 2010 20:47:56 +0000 (15:47 -0500)
committerGalen Charlton <gmcharlt@gmail.com>
Fri, 30 Apr 2010 02:36:38 +0000 (22:36 -0400)
The wrong variable was used to select the number of days-until-due; this fixes it to use
the borrower's preference setting.

Signed-off-by: Galen Charlton <gmcharlt@gmail.com>
misc/cronjobs/advance_notices.pl

index 46dc3f8..6a408e4 100755 (executable)
@@ -185,7 +185,7 @@ UPCOMINGITEM: foreach my $upcoming ( @$upcoming_dues ) {
             my $letter_type = 'PREDUE';
             $letter = C4::Letters::getletter( 'circulation', $letter_type );
             die "no letter of type '$letter_type' found. Please see sample_notices.sql" unless $letter;
-            $sth->execute($upcoming->{'borrowernumber'},$upcoming->{'itemnumber'},$maxdays);
+            $sth->execute($upcoming->{'borrowernumber'},$upcoming->{'itemnumber'},$borrower_preferences->{'days_in_advance'});
             my $titles = "";
             while ( my $item_info = $sth->fetchrow_hashref()) {
               my @item_info = map { $_ =~ /^date|date$/ ? format_date($item_info->{$_}) : $item_info->{$_} || '' } @item_content_fields;
@@ -241,7 +241,7 @@ PATRON: while ( my ( $borrowernumber, $count ) = each %$upcoming_digest ) {
     my $letter_type = 'PREDUEDGST';
     my $letter = C4::Letters::getletter( 'circulation', $letter_type );
     die "no letter of type '$letter_type' found. Please see sample_notices.sql" unless $letter;
-    $sth->execute($borrowernumber,$maxdays);
+    $sth->execute($borrowernumber,$borrower_preferences->{'days_in_advance'});
     my $titles = "";
     while ( my $item_info = $sth->fetchrow_hashref()) {
       my @item_info = map { $_ =~ /^date|date$/ ? format_date($item_info->{$_}) : $item_info->{$_} || '' } @item_content_fields;