Plain Text Emails:
use Email::Simple;
use Email::Sender::Simple qw(sendmail);
my $email = Email::Simple->create(
header => [ From => "", To => "", Subject => "" ],
body => $message,
);
sendmail($email);
HTML Emails (MIME::Lite::HTML will handle attaching images, css, ...):
use MIME::Lite;
use MIME::Lite::HTML;
use HTML::FormatText::WithLinks;
Send(
{ From => "", To => "", Subject => "" },
$html_message
);
sub Send {
state $mk_text = HTML::FormatText::WithLinks->new();
my ($opt, $html, $text) = @_;
$text ||= $mk_text->parse($html);
my $ml = MIME::Lite::HTML->new(
TextCharset => 'UTF-8',
TextEncoding => 'base64',
HTMLCharset => 'UTF-8',
%$opt,
);
my $m = $ml->parse($html,$text);
my @errors;
die "@errors" if @errors = $ml->errstr;
$m->send;
}