|
<?php |
|
|
|
namespace Kanboard\Core\Mail\Transport; |
|
|
|
use Swift_Message; |
|
use Swift_Mailer; |
|
use Swift_MailTransport; |
|
use Swift_TransportException; |
|
use Kanboard\Core\Base; |
|
use Kanboard\Core\Mail\ClientInterface; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
class Mail extends Base implements ClientInterface |
|
{ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
public function sendEmail($recipientEmail, $recipientName, $subject, $html, $authorName, $authorEmail = '') |
|
{ |
|
try { |
|
$message = Swift_Message::newInstance() |
|
->setSubject($subject) |
|
->setFrom($this->helper->mail->getMailSenderAddress(), $authorName) |
|
->setTo(array($recipientEmail => $recipientName)); |
|
|
|
if (! empty(MAIL_BCC)) { |
|
$message->setBcc(MAIL_BCC); |
|
} |
|
|
|
$headers = $message->getHeaders(); |
|
|
|
|
|
$headers->addTextHeader('Auto-Submitted', 'auto-generated'); |
|
|
|
if (! empty($authorEmail)) { |
|
$message->setReplyTo($authorEmail); |
|
} |
|
|
|
$message->setBody($html, 'text/html'); |
|
|
|
Swift_Mailer::newInstance($this->getTransport())->send($message); |
|
} catch (Swift_TransportException $e) { |
|
$this->logger->error($e->getMessage()); |
|
} |
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
protected function getTransport() |
|
{ |
|
return Swift_MailTransport::newInstance(); |
|
} |
|
} |
|
|