Importersync.php 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. <?php
  2. namespace Dotdigitalgroup\Email\Controller\Adminhtml\Run;
  3. class Importersync extends \Magento\Backend\App\AbstractAction
  4. {
  5. /**
  6. * Authorization level of a basic admin session
  7. *
  8. * @see _isAllowed()
  9. */
  10. const ADMIN_RESOURCE = 'Dotdigitalgroup_Email::config';
  11. /**
  12. * @var \Magento\Framework\Message\ManagerInterface
  13. */
  14. protected $messageManager;
  15. /**
  16. * @var \Dotdigitalgroup\Email\Model\ImporterFactory
  17. */
  18. private $importerFactory;
  19. /**
  20. * Importersync constructor.
  21. *
  22. * @param \Dotdigitalgroup\Email\Model\ImporterFactory $importerFactory
  23. * @param \Magento\Backend\App\Action\Context $context
  24. */
  25. public function __construct(
  26. \Dotdigitalgroup\Email\Model\ImporterFactory $importerFactory,
  27. \Magento\Backend\App\Action\Context $context
  28. ) {
  29. $this->importerFactory = $importerFactory;
  30. $this->messageManager = $context->getMessageManager();
  31. parent::__construct($context);
  32. }
  33. /**
  34. * Refresh suppressed contacts.
  35. *
  36. * @return null
  37. */
  38. public function execute()
  39. {
  40. /** @var \Dotdigitalgroup\Email\Model\Importer $importer */
  41. $importer = $this->importerFactory->create();
  42. $importer->processQueue();
  43. $this->messageManager->addSuccessMessage('Done.');
  44. $redirectBack = $this->_redirect->getRefererUrl();
  45. $this->_redirect($redirectBack);
  46. }
  47. }