SmtpTransportZend1.php 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. <?php
  2. namespace Dotdigitalgroup\Email\Model\Mail;
  3. use Dotdigitalgroup\Email\Helper\Transactional;
  4. class SmtpTransportZend1
  5. {
  6. /**
  7. * @var Transactional
  8. */
  9. private $transactionalEmailSettings;
  10. /**
  11. * @var ZendMailTransportSmtp1Factory
  12. */
  13. private $zendMailTransportSmtp1Factory;
  14. /**
  15. * @param Transactional $transactionalEmailSettings
  16. * @param ZendMailTransportSmtp1Factory $zendMailTransportSmtp1Factory
  17. */
  18. public function __construct(
  19. Transactional $transactionalEmailSettings,
  20. ZendMailTransportSmtp1Factory $zendMailTransportSmtp1Factory
  21. ) {
  22. $this->transactionalEmailSettings = $transactionalEmailSettings;
  23. $this->zendMailTransportSmtp1Factory = $zendMailTransportSmtp1Factory;
  24. }
  25. /**
  26. * @param \Zend_Mail $message
  27. * @param int $storeId
  28. *
  29. * @return void
  30. * @throws \Zend_Mail_Transport_Exception
  31. */
  32. public function send($message, $storeId)
  33. {
  34. $host = $this->transactionalEmailSettings->getSmtpHost($storeId);
  35. $config = $this->transactionalEmailSettings->getTransportConfig($storeId);
  36. $smtp = $this->zendMailTransportSmtp1Factory->create($host, $config);
  37. $smtp->send($message);
  38. }
  39. }