![]() 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/app/code/Soon/Faq/Controller/Adminhtml/Action/ |
<?php /** * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) * @author Hervé Guétin <[email protected]> <@herveguetin> * @copyright Copyright (c) 2016 Agence Soon (http://www.agence-soon.fr) */ namespace Soon\Faq\Controller\Adminhtml\Action; use Magento\Backend\Model\View\Result\Redirect; use Magento\Framework\App\Request\Http; use Magento\Framework\App\ResponseInterface; use Magento\Framework\Exception\LocalizedException; class Save extends ActionAbstract { /** * Dispatch request * * @return \Magento\Framework\Controller\ResultInterface|ResponseInterface * @throws \Magento\Framework\Exception\NotFoundException */ public function execute() { /** @var Redirect $redirect */ $redirect = $this->getRedirectFactory()->create(); /** @var Http $request */ $request = $this->getRequest(); $data = $request->getPostValue(); if ($data) { $id = $this->getRequest()->getParam('id'); if (empty($data['id'])) { $data['id'] = null; } $this->getModel()->getResource()->load($this->getModel(), $id); if (!$this->getModel()->getId() && $id) { $this->messageManager->addErrorMessage(__('This item no longer exists.')); return $redirect->setPath('*/*/'); } $this->getModel()->setData($data); try { $this->getModel()->getResource()->save($this->getModel()); $this->messageManager->addSuccessMessage(__('This item has been saved.')); $this->getDataPersistor()->clear($this->getDataPersistorKey()); if ($this->getRequest()->getParam('back')) { return $redirect->setPath('*/*/edit', ['id' => $this->getModel()->getId()]); } return $redirect->setPath('*/*/'); } catch (LocalizedException $e) { $this->messageManager->addErrorMessage($e->getMessage()); } catch (\Exception $e) { $this->messageManager->addExceptionMessage($e, __('Something went wrong while saving.')); } $this->getDataPersistor()->set($this->getDataPersistorKey(), $data); return $redirect->setPath('*/*/edit', ['id' => $this->getRequest()->getParam('id')]); } return $redirect->setPath('*/*/'); } }