Bugzilla – Attachment 24407 Details for
Bug 11561
Preventing duplicate print notices and enforcing a print notice if no notices can be generated
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
Bug 11561: Preventing duplicate print notices and enforcing a print notice if no notices can be generated
Bug-11561-Preventing-duplicate-print-notices-and-e.patch (text/plain), 3.11 KB, created by
Olli-Antti Kivilahti
on 2014-01-15 15:09:31 UTC
(
hide
)
Description:
Bug 11561: Preventing duplicate print notices and enforcing a print notice if no notices can be generated
Filename:
MIME Type:
Creator:
Olli-Antti Kivilahti
Created:
2014-01-15 15:09:31 UTC
Size:
3.11 KB
patch
obsolete
>From bd5e80bbf81efcec4df5a1d6d9183e83e7ee44b7 Mon Sep 17 00:00:00 2001 >From: Olli-Antti Kivilahti <olli-antti.kivilahti@jns.fi> >Date: Wed, 15 Jan 2014 16:25:17 +0200 >Subject: [PATCH] Bug 11561: Preventing duplicate print notices and enforcing a > print notice if no notices can be generated > >------------------------- >- REPLICATING THE ISSUE - >------------------------- > >1. Set a Patrons "Hold filled"-messaging preference to SMS + Email >2. Remove the SMS number (sms notification number) and all email addresses. >3. Make a reservation for this Patron. >4. Check-in the reserved Item. >5. message_queue-table has two generated print notices for the Hold_filled event. > One for both failed message transport types, email and sms. > >1. Set a Patrons "Hold filled"-messaging preference to empty, remove all checks from boxes. >2. Make a reservation for this Patron >3. Check-in the reserved Item. >4. message_queue-table has no message for the Hold-filled event. This is problematic > because a Patron should get somekind of a notification for a filled Hold. > >----------------------------- >- AFTER APPLYING THIS PATCH - >----------------------------- > >If all message transport types for "Hold filled" fail, a print notice is queued >in the message_queue-table. Only one print message is queued even if many transports >attempts fail. >--- > C4/Reserves.pm | 23 +++++++++++++++++------ > 1 file changed, 17 insertions(+), 6 deletions(-) > >diff --git a/C4/Reserves.pm b/C4/Reserves.pm >index 193bac3..a87e610 100644 >--- a/C4/Reserves.pm >+++ b/C4/Reserves.pm >@@ -1891,12 +1891,9 @@ sub _koha_notify_reserve { > substitute => { today => C4::Dates->new()->output() }, > ); > >- my $print_sent = 0; >- while ( my ( $mtt, $letter_code ) = each %{ $messagingprefs->{transports} } ) { >- if ( ($mtt eq 'email' and not $to_address) or ($mtt eq 'sms' and not $borrower->{smsalertnumber}) ) { >- # email or sms is requested but not exist, do a print. >- $mtt = 'print'; >- } >+ my $notification_sent = 0; #Keeping track if a Hold_filled message is sent. If no message can be sent, then default to a print message. >+ my $send_notification = sub { >+ my ( $mtt, $letter_code ) = (@_); > $letter_params{letter_code} = $letter_code; > $letter_params{message_transport_type} = $mtt; > my $letter = C4::Letters::GetPreparedLetter ( %letter_params ) >@@ -1908,7 +1905,21 @@ sub _koha_notify_reserve { > from_address => $admin_email_address, > message_transport_type => $mtt, > } ); >+ }; >+ >+ while ( my ( $mtt, $letter_code ) = each %{ $messagingprefs->{transports} } ) { >+ if ( ($mtt eq 'email' and not $to_address) or ($mtt eq 'sms' and not $borrower->{smsalertnumber}) ) { >+ # email or sms is requested but not exist >+ next; >+ } >+ &$send_notification($mtt, $letter_code); >+ $notification_sent++; > } >+ #Making sure that a print notification is sent if no other transport types can be utilized. >+ if (! $notification_sent) { >+ &$send_notification('print', 'HOLD'); >+ } >+ > } > > =head2 _ShiftPriorityByDateAndPriority >-- >1.8.1.2
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
|
Splinter Review
Attachments on
bug 11561
: 24407