X-Git-Url: http://koha-dev.rot13.org:8081/gitweb/?a=blobdiff_plain;f=C4%2FLetters.pm;h=885ed5fb9027b73f0bf78d6eafa999b29f8c83a9;hb=fe99800a2e39fba1c6369bdfe3f600119308514a;hp=78f064ae18068541385551f7bf3f71a3e243abcc;hpb=7279f55b60e02780df6b65c4c92ade9f413d5c01;p=koha_fer diff --git a/C4/Letters.pm b/C4/Letters.pm index 78f064ae18..885ed5fb90 100644 --- a/C4/Letters.pm +++ b/C4/Letters.pm @@ -154,7 +154,7 @@ sub addalert ($$$) { parameters : - alertid : the alert id deletes the alert - + =cut sub delalert ($) { @@ -349,8 +349,6 @@ sub SendAlerts { 'Content-Type' => 'text/plain; charset="utf8"', ); sendmail(%mail) or carp $Mail::Sendmail::error; - warn -"sending to $mail{To} From $mail{From} subj $mail{Subject} Mess $mail{Message}"; } if ( C4::Context->preference("LetterLog") ) { logaction( @@ -439,8 +437,6 @@ sub SendAlerts { . $innerletter->{content} ) if C4::Context->preference("LetterLog"); } - warn -"sending to From $userenv->{emailaddress} subj $innerletter->{title} Mess $innerletter->{content}"; } # send an "account details" notice to a newly created user elsif ( $type eq 'members' ) { @@ -552,9 +548,8 @@ sub parseletter { =head2 EnqueueLetter -=over 4 - -my $success = EnqueueLetter( { letter => $letter, borrowernumber => '12', message_transport_type => 'email' } ) + my $success = EnqueueLetter( { letter => $letter, + borrowernumber => '12', message_transport_type => 'email' } ) places a letter in the message_queue database table, which will eventually get processed (sent) by the process_message_queue.pl @@ -562,8 +557,6 @@ cronjob when it calls SendQueuedMessages. return true on success -=back - =cut sub EnqueueLetter ($) { @@ -609,16 +602,12 @@ ENDSQL =head2 SendQueuedMessages ([$hashref]) -=over 4 + my $sent = SendQueuedMessages( { verbose => 1 } ); sends all of the 'pending' items in the message queue. -my $sent = SendQueuedMessages( { verbose => 1 } ); - returns number of messages sent. -=back - =cut sub SendQueuedMessages (;$) { @@ -645,14 +634,10 @@ sub SendQueuedMessages (;$) { =head2 GetRSSMessages -=over 4 - -my $message_list = GetRSSMessages( { limit => 10, borrowernumber => '14' } ) + my $message_list = GetRSSMessages( { limit => 10, borrowernumber => '14' } ) returns a listref of all queued RSS messages for a particular person. -=back - =cut sub GetRSSMessages { @@ -669,15 +654,11 @@ sub GetRSSMessages { =head2 GetPrintMessages -=over 4 - -my $message_list = GetPrintMessages( { borrowernumber => $borrowernumber } ) + my $message_list = GetPrintMessages( { borrowernumber => $borrowernumber } ) Returns a arrayref of all queued print messages (optionally, for a particular person). -=back - =cut sub GetPrintMessages { @@ -689,17 +670,13 @@ sub GetPrintMessages { =head2 GetQueuedMessages ([$hashref]) -=over 4 - -my $messages = GetQueuedMessage( { borrowernumber => '123', limit => 20 } ); + my $messages = GetQueuedMessage( { borrowernumber => '123', limit => 20 } ); fetches messages out of the message queue. returns: list of hashes, each has represents a message in the message queue. -=back - =cut sub GetQueuedMessages { @@ -821,7 +798,14 @@ sub _send_message_by_email ($;$$$) { status => 'failed' } ); return; } - unless ($to_address = $member->{email}) { # assigment, not comparison + my $which_address = C4::Context->preference('AutoEmailPrimaryAddress'); + # If the system preference is set to 'first valid' (value == OFF), look up email address + if ($which_address eq 'OFF') { + $to_address = GetFirstValidEmailAddress( $message->{'borrowernumber'} ); + } else { + $to_address = $member->{$which_address}; + } + unless ($to_address) { # warn "FAIL: No 'to_address' and no email for " . ($member->{surname} ||'') . ", borrowernumber ($message->{borrowernumber})"; # warning too verbose for this more common case? _set_message_status( { message_id => $message->{'message_id'},