src/Services/Mailer.php line 29

Open in your IDE?
  1. <?php
  2. /**
  3.  * Created by PhpStorm.
  4.  * User: adv
  5.  * Date: 26.11.15
  6.  * Time: 00:28
  7.  */
  8. namespace Slivki\Services;
  9. use Slivki\Util\Logger;
  10. use Slivki\Util\MailMessage;
  11. use Symfony\Component\HttpKernel\KernelInterface;
  12. use Symfony\Component\Mailer\MailerInterface;
  13. use Symfony\Component\Mime\Crypto\SMimeSigner;
  14. use Symfony\Component\Mime\Email;
  15. class Mailer {
  16.     private $kernel;
  17.     private $mailer;
  18.     public function __construct(KernelInterface $kernel,  MailerInterface $mailer) {
  19.         $this->mailer $mailer;
  20.         $this->kernel $kernel;
  21.     }
  22.     public function createMessage($subject null$body null$contentType null$charSet null) {
  23.         $message = new MailMessage();
  24.         if ($subject) {
  25.             $message->subject($subject);
  26.         }
  27.         if ($body || $body == '') {
  28.             $message->html($body);
  29.         }
  30.         return $message;
  31.     }
  32.     public function send(MailMessage $message$spoolName 'default') {
  33.         $logger Logger::instance('Mailer');
  34.         $logger->info("Mail to " ' ' $message->getTo()[0]->toString() . $message->getSubject());
  35.         //$signer = new SMimeSigner($this->kernel->getProjectDir() . '/etc' . '/DKIM.key', 'slivki.by', 'slivki');
  36.         $this->mailer->send($message);
  37.     }
  38. }