View | Details | Raw Unified | Return to bug 18990
Collapse All | Expand All

(-)a/C4/Letters.pm (-2 / +2 lines)
Lines 1056-1067 sub SendQueuedMessages { Link Here
1056
                    _set_message_status( { message_id => $message->{'message_id'}, status => 'failed' } );
1056
                    _set_message_status( { message_id => $message->{'message_id'}, status => 'failed' } );
1057
                    next MESSAGE;
1057
                    next MESSAGE;
1058
                }
1058
                }
1059
                $message->{to_address} ||= $patron->smsalertnumber;
1059
                unless ( $patron->smsalertnumber ) {
1060
                unless ( $message->{to_address} && $patron->smsalertnumber ) {
1061
                    _set_message_status( { message_id => $message->{'message_id'}, status => 'failed' } );
1060
                    _set_message_status( { message_id => $message->{'message_id'}, status => 'failed' } );
1062
                    warn sprintf( "No smsalertnumber found for patron %s!", $message->{'borrowernumber'} ) if $params->{'verbose'} or $debug;
1061
                    warn sprintf( "No smsalertnumber found for patron %s!", $message->{'borrowernumber'} ) if $params->{'verbose'} or $debug;
1063
                    next MESSAGE;
1062
                    next MESSAGE;
1064
                }
1063
                }
1064
                $message->{to_address}  = $patron->smsalertnumber; #Sometime this is set to email - sms should always use smsalertnumber
1065
                $message->{to_address} .= '@' . $sms_provider->domain();
1065
                $message->{to_address} .= '@' . $sms_provider->domain();
1066
                _update_message_to_address($message->{'message_id'},$message->{to_address});
1066
                _update_message_to_address($message->{'message_id'},$message->{to_address});
1067
                _send_message_by_email( $message, $params->{'username'}, $params->{'password'}, $params->{'method'} );
1067
                _send_message_by_email( $message, $params->{'username'}, $params->{'password'}, $params->{'method'} );
(-)a/t/db_dependent/Letters.t (-3 / +12 lines)
Lines 633-639 subtest 'TranslateNotices' => sub { Link Here
633
633
634
subtest 'SendQueuedMessages' => sub {
634
subtest 'SendQueuedMessages' => sub {
635
635
636
    plan tests => 2;
636
    plan tests => 3;
637
    t::lib::Mocks::mock_preference( 'SMSSendDriver', 'Email' );
637
    t::lib::Mocks::mock_preference( 'SMSSendDriver', 'Email' );
638
    my $patron = Koha::Patrons->find($borrowernumber);
638
    my $patron = Koha::Patrons->find($borrowernumber);
639
    $dbh->do(q|
639
    $dbh->do(q|
Lines 652-658 subtest 'SendQueuedMessages' => sub { Link Here
652
        borrowernumber => $borrowernumber,
652
        borrowernumber => $borrowernumber,
653
        status => 'sent'
653
        status => 'sent'
654
    })->next()->to_address();
654
    })->next()->to_address();
655
    is( $sms_message_address, '5555555555@kidclamp.rocks', 'SendQueuedMessages populates the to address correctly for SMS by email' );
655
    is( $sms_message_address, '5555555555@kidclamp.rocks', 'SendQueuedMessages populates the to address correctly for SMS by email when to_address not set' );
656
    $schema->resultset('MessageQueue')->search({borrowernumber => $borrowernumber,status => 'sent'})->delete(); #clear borrower queue
657
    $my_message->{to_address} = 'fixme@kidclamp.iswrong';
658
    $message_id = C4::Letters::EnqueueLetter($my_message);
659
    C4::Letters::SendQueuedMessages();
660
    $sms_message_address = $schema->resultset('MessageQueue')->search({
661
        borrowernumber => $borrowernumber,
662
        status => 'sent'
663
    })->next()->to_address();
664
    is( $sms_message_address, '5555555555@kidclamp.rocks', 'SendQueuedMessages populates the to address correctly for SMS by email when to_address is set incorrectly' );
665
656
};
666
};
657
667
658
subtest 'get_item_content' => sub {
668
subtest 'get_item_content' => sub {
659
- 

Return to bug 18990