From d55a5ca464f6af91419cab74ee91dbacff9c9722 Mon Sep 17 00:00:00 2001 From: Jonathan Druart Date: Fri, 21 Aug 2015 10:43:13 +0100 Subject: [PATCH] Bug 14133: Print notices should be generated with the print template If the overdue notice to send is an email or a SMS and the patron does not provided such information, a print notice is generated. But it will be generated with the email or sms template, which is not useful, especially in the SMS case. The template to use should be the print one. Test plan: 0/ Does not apply this patch and Correctly define the overdue rules to generate an overdue notice to the message_queue table. Check email + SMS 1/ Define an email address and a SMS number for a patron 2/ Generate the overdue notices (misc/cronjobs/overdue_notices.pl [-t]) 3/ 2 notices should have been generated: mtt=email with the email template used mtt=sms with the sms template used 4/ Truncate the message_queue table 5/ Remove the email address and repeat 2 6/ Only 1 notice should have been generated: mtt=print with the email template used 7/ Truncate the message_queue table 8/ Remove the sms alert number and repeat 2 9/ 2 notices should have been generated: mtt=print with the email template used (or sms I suppose) 10/ Apply this patch and repeat previous steps. The print notices should be generated with the print template. IMPORTANT NOTE: This test plan does not take into account the notices generated for the staff ("These messages were not sent directly to the patrons."). However the behavior will also change, the print template will be used in all cases. Is it what we want? Signed-off-by: Chris Seems fine by me Signed-off-by: Kyle M Hall Signed-off-by: Brendan A Gallagher (cherry picked from commit 581759e985c170db0edb4a895cda641930e5ac11) Signed-off-by: Julian Maurice --- misc/cronjobs/overdue_notices.pl | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/misc/cronjobs/overdue_notices.pl b/misc/cronjobs/overdue_notices.pl index 7bcd37538f..9be7e4d5ca 100755 --- a/misc/cronjobs/overdue_notices.pl +++ b/misc/cronjobs/overdue_notices.pl @@ -669,6 +669,10 @@ END_SQL my $print_sent = 0; # A print notice is not yet sent for this patron for my $mtt ( @message_transport_types ) { + if ( ($mtt eq 'email' and not scalar @emails_to_use) or ($mtt eq 'sms' and not $data->{smsalertnumber}) ) { + # email or sms is requested but not exist, do a print. + $mtt = 'print'; + } my $letter = parse_overdues_letter( { letter_code => $overdue_rules->{"letter$i"}, borrowernumber => $borrowernumber, @@ -721,8 +725,6 @@ END_SQL ); } else { if ( ($mtt eq 'email' and not scalar @emails_to_use) or ($mtt eq 'sms' and not $data->{smsalertnumber}) ) { - # email or sms is requested but not exist, do a print. - $mtt = 'print'; push @output_chunks, prepare_letter_for_printing( { letter => $letter, -- 2.39.5