Delete.php 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. <?php
  2. /**
  3. * Copyright © Magento, Inc. All rights reserved.
  4. * See COPYING.txt for license details.
  5. */
  6. namespace Magento\Review\Controller\Adminhtml\Product;
  7. use Magento\Review\Controller\Adminhtml\Product as ProductController;
  8. use Magento\Framework\Controller\ResultFactory;
  9. class Delete extends ProductController
  10. {
  11. /**
  12. * @return \Magento\Backend\Model\View\Result\Redirect
  13. */
  14. public function execute()
  15. {
  16. /** @var \Magento\Backend\Model\View\Result\Redirect $resultRedirect */
  17. $resultRedirect = $this->resultFactory->create(ResultFactory::TYPE_REDIRECT);
  18. $reviewId = $this->getRequest()->getParam('id', false);
  19. try {
  20. $this->reviewFactory->create()->setId($reviewId)->aggregate()->delete();
  21. $this->messageManager->addSuccess(__('The review has been deleted.'));
  22. if ($this->getRequest()->getParam('ret') == 'pending') {
  23. $resultRedirect->setPath('review/*/pending');
  24. } else {
  25. $resultRedirect->setPath('review/*/');
  26. }
  27. return $resultRedirect;
  28. } catch (\Magento\Framework\Exception\LocalizedException $e) {
  29. $this->messageManager->addError($e->getMessage());
  30. } catch (\Exception $e) {
  31. $this->messageManager->addException($e, __('Something went wrong deleting this review.'));
  32. }
  33. return $resultRedirect->setPath('review/*/edit/', ['id' => $reviewId]);
  34. }
  35. }