Correctly encode non-ASCII e-mail content. Fixes spamfilter issues.

New dependency: MIME::Entity
This commit is contained in:
Daniel Friesel 2020-03-14 14:56:02 +01:00
parent 871a44f15e
commit e7a6cfa931
2 changed files with 11 additions and 10 deletions

View file

@ -3,10 +3,11 @@ requires 'CAM::PDF';
requires 'Crypt::Eksblowfish';
requires 'DateTime';
requires 'DateTime::Format::Strptime';
requires 'Email::Sender';
requires 'Email::Sender::Simple';
requires 'Geo::Distance';
requires 'Geo::Distance::XS';
requires 'List::UtilsBy';
requires 'MIME::Entity';
requires 'Mojolicious';
requires 'Mojolicious::Plugin::Authentication';
requires 'Mojo::Pg';

View file

@ -7,7 +7,7 @@ use 5.020;
use Encode qw(encode);
use Email::Sender::Simple qw(try_to_sendmail);
use Email::Simple;
use MIME::Entity;
sub new {
my ( $class, %opt ) = @_;
@ -18,14 +18,14 @@ sub new {
sub custom {
my ( $self, $to, $subject, $body ) = @_;
my $reg_mail = Email::Simple->create(
header => [
To => $to,
From => $self->{config}{from},
Subject => $subject,
'Content-Type' => 'text/plain; charset=UTF-8',
],
body => encode( 'utf-8', $body ),
my $reg_mail = MIME::Entity->build(
To => $to,
From => $from,
Subject => encode( 'MIME-Header', $subject ),
Type => 'text/plain',
Charset => 'UTF-8',
Encoding => 'quoted-printable',
Data => encode( 'utf-8', $body ),
);
if ( $self->{config}->{disabled} ) {