summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIvan Kohler <ivan@freeside.biz>2016-11-03 17:25:49 -0700
committerIvan Kohler <ivan@freeside.biz>2016-11-03 17:25:49 -0700
commitbf6d06efe903dfd4c112fb9eccb98344841b729c (patch)
tree7d5f969cdb11229bdcab5aa8dd1ecf57f1b5563e
parente6b4ecab0e62de9da1bae4df0216e1b547f77f3d (diff)
Format email addresses w/Email::Address instead of ad-hoc, fixes issues emailing companies with commas, RT#73241
-rw-r--r--FS/FS/cust_main.pm11
1 files changed, 7 insertions, 4 deletions
diff --git a/FS/FS/cust_main.pm b/FS/FS/cust_main.pm
index 7e1a25d..0165bc4 100644
--- a/FS/FS/cust_main.pm
+++ b/FS/FS/cust_main.pm
@@ -32,6 +32,7 @@ use Digest::MD5 qw(md5_base64);
use Date::Format;
#use Date::Manip;
use File::Temp; #qw( tempfile );
+use Email::Address;
use Business::CreditCard 0.28;
use FS::UID qw( getotaker dbh driver_name );
use FS::Record qw( qsearchs qsearch dbdef regexp_sql );
@@ -3571,15 +3572,17 @@ sub contact_list_email {
# unlike on 4.x, we have a separate list of invoice email
# destinations.
# make sure they're not redundant with contact emails
- my $dest = $contact->firstlast . ' <' . $contact_email->emailaddress . '>';
- $emails{ $contact_email->emailaddress } = $dest;
+ $emails{ $contact_email->emailaddress } =
+ Email::Address->new( $contact->firstlast,
+ $contact_email->emailaddress
+ )->format;
}
}
}
if ( $and_invoice ) {
foreach my $email ($self->invoicing_list_emailonly) {
- my $dest = $self->name_short . ' <' . $email . '>';
- $emails{ $email } ||= $dest;
+ $emails{ $email } ||=
+ Email::Address->new( $self->name_short, $email )->format;
}
}
values %emails;