Preview.php 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. <?php
  2. /**
  3. * Copyright © Magento, Inc. All rights reserved.
  4. * See COPYING.txt for license details.
  5. */
  6. namespace Magento\Newsletter\Block\Adminhtml\Queue;
  7. /**
  8. * Newsletter template preview block
  9. *
  10. * @api
  11. * @since 100.0.2
  12. */
  13. class Preview extends \Magento\Newsletter\Block\Adminhtml\Template\Preview
  14. {
  15. /**
  16. * {@inheritdoc}
  17. */
  18. protected $profilerName = "newsletter_queue_proccessing";
  19. /**
  20. * @var \Magento\Newsletter\Model\QueueFactory
  21. */
  22. protected $_queueFactory;
  23. /**
  24. * @param \Magento\Backend\Block\Template\Context $context
  25. * @param \Magento\Newsletter\Model\TemplateFactory $templateFactory
  26. * @param \Magento\Newsletter\Model\QueueFactory $queueFactory
  27. * @param \Magento\Newsletter\Model\SubscriberFactory $subscriberFactory
  28. * @param array $data
  29. */
  30. public function __construct(
  31. \Magento\Backend\Block\Template\Context $context,
  32. \Magento\Newsletter\Model\TemplateFactory $templateFactory,
  33. \Magento\Newsletter\Model\SubscriberFactory $subscriberFactory,
  34. \Magento\Newsletter\Model\QueueFactory $queueFactory,
  35. array $data = []
  36. ) {
  37. $this->_queueFactory = $queueFactory;
  38. parent::__construct($context, $templateFactory, $subscriberFactory, $data);
  39. }
  40. /**
  41. * @param \Magento\Newsletter\Model\Template $template
  42. * @param string $id
  43. * @return $this
  44. */
  45. protected function loadTemplate(\Magento\Newsletter\Model\Template $template, $id)
  46. {
  47. /** @var \Magento\Newsletter\Model\Queue $queue */
  48. $queue = $this->_queueFactory->create()->load($id);
  49. $template->setTemplateType($queue->getNewsletterType());
  50. $template->setTemplateText($queue->getNewsletterText());
  51. $template->setTemplateStyles($queue->getNewsletterStyles());
  52. return $this;
  53. }
  54. }