Bug 21241: Conditional to choose appropriate message_transport_type for suggestion notices
Introducing a conditional into C4/Suggestions.pm to check if no patron email exists but a smsalertnumber does exist then the suggestion notice message_transport_type is set to 'sms', otherwise the suggestion message_transport_type='email'. This ensures patrons with no email address still receieve their suggestion notices because at present the message_transport_type is hardcoded to 'email'. Test plan: 1. Chose a patron who has no email address set, but does have a smsalertnumber set (this value is set in the Patron messaging preferences section after the SMSSendDriver syspref is set) 2. Log into the OPAC with that user and submit a suggestion 3. In the staff client go to Acquisitions->Suggestions and tick the suggestion and set its status to 'Accepted' 4. In the database query the message_queue and notice the message_transport_type of the message is set to 'email' even though the patron has no email address set. 5. Apply this patch, restart memcached and plack 6. Repeat steps 2,3 with the same patron and query the message_queue table again and notice this time the message_transport_type = 'sms' 7. Repeat steps 2,3 with a patron with no smsalertnumber or email address. Query the database and observe the message_transport_type=email. If no smsalertnumber is set then the message_transport_type is set to 'email' by default Sponsored-By: Brimbank Library, Australia Signed-off-by: Owen Leonard <oleonard@myacpl.org> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com> Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
This commit is contained in:
parent
358adce2e7
commit
dfa883bbd0
1 changed files with 10 additions and 1 deletions
|
@ -503,6 +503,15 @@ sub ModSuggestion {
|
|||
# fetch the entire updated suggestion so that we can populate the letter
|
||||
my $full_suggestion = GetSuggestion( $suggestion->{suggestionid} );
|
||||
my $patron = Koha::Patrons->find( $full_suggestion->{suggestedby} );
|
||||
my $transport;
|
||||
|
||||
#Set message_transport_type of suggestion notice to email by default, unless the patron has a smsalertnumber set and no email address set
|
||||
if ($patron->smsalertnumber && (!$patron->email)) {
|
||||
$transport="sms";
|
||||
} else {
|
||||
$transport="email";
|
||||
}
|
||||
|
||||
if (
|
||||
my $letter = C4::Letters::GetPreparedLetter(
|
||||
module => 'suggestions',
|
||||
|
@ -524,7 +533,7 @@ sub ModSuggestion {
|
|||
borrowernumber => $full_suggestion->{suggestedby},
|
||||
suggestionid => $full_suggestion->{suggestionid},
|
||||
LibraryName => C4::Context->preference("LibraryName"),
|
||||
message_transport_type => 'email',
|
||||
message_transport_type => $transport,
|
||||
}
|
||||
) or warn "can't enqueue letter $letter";
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue