OSDN Git Service

Plugin::Sendmail: add _encode_header()
authorhylom <hylom@users.sourceforge.jp>
Thu, 8 Nov 2018 11:54:43 +0000 (20:54 +0900)
committerhylom <hylom@users.sourceforge.jp>
Thu, 8 Nov 2018 11:54:43 +0000 (20:54 +0900)
src/newslash_web/lib/Newslash/Plugin/Sendmail.pm

index cc01b33..ccd2691 100644 (file)
@@ -5,6 +5,7 @@ use Email::Simple;
 use Email::Sender::Simple;
 use Email::Sender::Transport::SMTP;
 use Encode;
+use Data::Dumper;
 
 has 'last_error';
 has 'app';
@@ -22,14 +23,21 @@ sub register {
     $cnf->{smtp_port} ||= '25';
 }
 
+sub _encode_header {
+    my ($self, $text) = @_;
+    my $encoded = encode('MIME-Header-ISO_2022_JP', $text);
+    $encoded =~ s/\n//g;
+    return $encoded;
+}
+
 sub _send {
     my ($self, $from, $to, $title, $body) = @_;
 
     # create header and body
     my $header = [
-                  From    => encode('MIME-Header-ISO_2022_JP', $from),
-                  To      => encode('MIME-Header-ISO_2022_JP', $to),
-                  Subject => encode('MIME-Header-ISO_2022_JP', $title),
+                  From    => $self->_encode_header($from),
+                  To      => $self->_encode_header($to),
+                  Subject => $self->_encode_header($title),
                   'Content-Type' => 'text/plain; charset=ISO-2022-JP',
                   'Content-Transfer-Encoding' => '7bit',
                  ];