<?php
/**
* Created by PhpStorm.
* User: adv
* Date: 26.11.15
* Time: 00:28
*/
namespace Slivki\Services;
use Slivki\Util\Logger;
use Slivki\Util\MailMessage;
use Symfony\Component\HttpKernel\KernelInterface;
use Symfony\Component\Mailer\MailerInterface;
use Symfony\Component\Mime\Crypto\SMimeSigner;
use Symfony\Component\Mime\Email;
class Mailer {
private $kernel;
private $mailer;
public function __construct(KernelInterface $kernel, MailerInterface $mailer) {
$this->mailer = $mailer;
$this->kernel = $kernel;
}
public function createMessage($subject = null, $body = null, $contentType = null, $charSet = null) {
$message = new MailMessage();
if ($subject) {
$message->subject($subject);
}
if ($body || $body == '') {
$message->html($body);
}
return $message;
}
public function send(MailMessage $message, $spoolName = 'default') {
$logger = Logger::instance('Mailer');
$logger->info("Mail to " . ' ' . $message->getTo()[0]->toString() . $message->getSubject());
//$signer = new SMimeSigner($this->kernel->getProjectDir() . '/etc' . '/DKIM.key', 'slivki.by', 'slivki');
$this->mailer->send($message);
}
}