From c75a8d44ee34ed7cddf92d658322d095a90c0465 Mon Sep 17 00:00:00 2001 From: Ivan Kohler Date: Sat, 13 Feb 2021 16:09:14 -0800 Subject: eliminate some false laziness in FS::Misc::send_email vs. msg_template/email.pm send_prepared :/ --- FS/FS/msg_template/email.pm | 30 +++++++----------------------- 1 file changed, 7 insertions(+), 23 deletions(-) (limited to 'FS/FS/msg_template') diff --git a/FS/FS/msg_template/email.pm b/FS/FS/msg_template/email.pm index aebac74..8fb81f6 100644 --- a/FS/FS/msg_template/email.pm +++ b/FS/FS/msg_template/email.pm @@ -16,7 +16,7 @@ use HTML::TreeBuilder; use Encode; # needed to send email -use FS::Misc qw( generate_email email_sender_transport_or_error ); +use FS::Misc qw( generate_email _sendmail ); use FS::Conf; use Email::Sender::Simple qw( sendmail ); @@ -543,29 +543,13 @@ sub send_prepared { # through Email::Address to make sure my @env_to = map { $_->address } Email::Address->parse($cust_msg->env_to); - my $transport = email_sender_transport_or_error($domain); + my $message = join("\n", $cust_msg->header, $cust_msg->body); - my $error = ''; - if ( ref($transport) ) { - - warn "$me sending message\n" if $DEBUG; - my $message = join("\n", $cust_msg->header, $cust_msg->body); - - local $SIG{__DIE__}; # don't want Mason __DIE__ handler active - local $@; - eval { sendmail( $message, { transport => $transport, - from => $cust_msg->env_from, - to => \@env_to }) - }; - if (ref($@) and $@->isa('Email::Sender::Failure')) { - $error = $@->code.' ' if $@->code; - $error .= $@->message; - } else { - $error = $@; - } - } else { - $error = $transport; - } + my $error = _sendmail( $message, { 'from' => $cust_msg->env_from, + 'to' => \@env_to, + 'domain' => $domain, + } + ); $cust_msg->set('error', $error); $cust_msg->set('status', $error ? 'failed' : 'sent'); -- cgit v1.1