![]() Server : Apache System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64 User : corals ( 1002) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system Directory : /home/corals/old/vendor/aheadworks/module-csblock/Controller/Adminhtml/Csblock/ |
<?php namespace Aheadworks\Csblock\Controller\Adminhtml\Csblock; /** * Class Delete * @package Aheadworks\Csblock\Controller\Adminhtml\Csblock */ class Delete extends \Aheadworks\Csblock\Controller\Adminhtml\Csblock { /** * @var \Magento\Framework\View\LayoutFactory */ protected $layoutFactory; /** * @var \Aheadworks\Csblock\Model\CsblockFactory */ protected $csblockModelFactory; protected $contentCollectionFactory; protected $contentModelFactory; /** * @param \Magento\Backend\App\Action\Context $context * @param \Magento\Framework\View\LayoutFactory $layoutFactory * @param \Aheadworks\Csblock\Model\CsblockFactory $csblockModelFactory */ public function __construct( \Magento\Backend\App\Action\Context $context, \Magento\Framework\View\LayoutFactory $layoutFactory, \Aheadworks\Csblock\Model\CsblockFactory $csblockModelFactory, \Aheadworks\Csblock\Model\ResourceModel\Content\CollectionFactory $contentCollectionFactory, \Aheadworks\Csblock\Model\ContentFactory $contentModelFactory ) { parent::__construct($context); $this->layoutFactory = $layoutFactory; $this->csblockModelFactory = $csblockModelFactory; $this->contentCollectionFactory = $contentCollectionFactory; $this->contentModelFactory = $contentModelFactory; } /** * @return $this */ public function execute() { $id = (int)$this->getRequest()->getParam('id'); $resultRedirect = $this->resultRedirectFactory->create(); /* @var $CsblockModel \Aheadworks\Csblock\Model\Csblock */ $csblockModel = $this->csblockModelFactory->create(); if ($id) { $csblockModel->load($id); if ($csblockModel->getId()) { try { /* delete block content */ $contentCollection = $this->contentCollectionFactory->create(); $contentCollection->addBlockIdFilter($csblockModel->getId()); foreach ($contentCollection as $row) { $contentModel = $this->contentModelFactory->create(); $contentModel->load($row->getId()); $contentModel->delete(); } $csblockModel->delete(); $this->messageManager->addSuccessMessage(__('Block was successfully deleted.')); } catch (\Exception $e) { $this->messageManager->addErrorMessage($e->getMessage()); return $resultRedirect->setPath('*/csblock/edit', ['id' => $this->getRequest()->getParam('id')]); } } } return $resultRedirect->setPath('*/csblock/'); } }