From f99a3c501fd6ed7b4914b8d6e855489c2ce5b219 Mon Sep 17 00:00:00 2001 From: Frederic Guillot Date: Fri, 16 Oct 2015 20:50:12 -0400 Subject: Make mail transports pluggable and move integrations to plugins - Postmark: https://github.com/kanboard/plugin-postmark - Mailgun: https://github.com/kanboard/plugin-mailgun - Sendgrid: https://github.com/kanboard/plugin-sendgrid --- app/Core/Mail/Transport/Mail.php | 57 ++++++++++++++++++++++++++++++++++++ app/Core/Mail/Transport/Sendmail.php | 25 ++++++++++++++++ app/Core/Mail/Transport/Smtp.php | 30 +++++++++++++++++++ 3 files changed, 112 insertions(+) create mode 100644 app/Core/Mail/Transport/Mail.php create mode 100644 app/Core/Mail/Transport/Sendmail.php create mode 100644 app/Core/Mail/Transport/Smtp.php (limited to 'app/Core/Mail/Transport') diff --git a/app/Core/Mail/Transport/Mail.php b/app/Core/Mail/Transport/Mail.php new file mode 100644 index 00000000..ca06e208 --- /dev/null +++ b/app/Core/Mail/Transport/Mail.php @@ -0,0 +1,57 @@ +setSubject($subject) + ->setFrom(array(MAIL_FROM => $author)) + ->setBody($html, 'text/html') + ->setTo(array($email => $name)); + + Swift_Mailer::newInstance($this->getTransport())->send($message); + } + catch (Swift_TransportException $e) { + $this->logger->error($e->getMessage()); + } + } + + /** + * Get SwiftMailer transport + * + * @access protected + * @return \Swift_Transport + */ + protected function getTransport() + { + return Swift_MailTransport::newInstance(); + } +} diff --git a/app/Core/Mail/Transport/Sendmail.php b/app/Core/Mail/Transport/Sendmail.php new file mode 100644 index 00000000..849e3385 --- /dev/null +++ b/app/Core/Mail/Transport/Sendmail.php @@ -0,0 +1,25 @@ +setUsername(MAIL_SMTP_USERNAME); + $transport->setPassword(MAIL_SMTP_PASSWORD); + $transport->setEncryption(MAIL_SMTP_ENCRYPTION); + + return $transport; + } +} -- cgit v1.2.3