Start.php 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. <?php
  2. /**
  3. *
  4. * Copyright © Magento, Inc. All rights reserved.
  5. * See COPYING.txt for license details.
  6. */
  7. namespace Magento\Newsletter\Controller\Adminhtml\Queue;
  8. class Start extends \Magento\Newsletter\Controller\Adminhtml\Queue
  9. {
  10. /**
  11. * Start Newsletter queue
  12. *
  13. * @return void
  14. */
  15. public function execute()
  16. {
  17. $queue = $this->_objectManager->create(
  18. \Magento\Newsletter\Model\Queue::class
  19. )->load(
  20. $this->getRequest()->getParam('id')
  21. );
  22. if ($queue->getId()) {
  23. if (!in_array(
  24. $queue->getQueueStatus(),
  25. [\Magento\Newsletter\Model\Queue::STATUS_NEVER, \Magento\Newsletter\Model\Queue::STATUS_PAUSE]
  26. )
  27. ) {
  28. $this->_redirect('*/*');
  29. return;
  30. }
  31. $queue->setQueueStartAt(
  32. $this->_objectManager->get(\Magento\Framework\Stdlib\DateTime\DateTime::class)->gmtDate()
  33. )->setQueueStatus(
  34. \Magento\Newsletter\Model\Queue::STATUS_SENDING
  35. )->save();
  36. }
  37. $this->_redirect('*/*');
  38. }
  39. }