_initVariable(); $data = $this->getRequest()->getPost('variable'); $back = $this->getRequest()->getParam('back', false); /** @var \Magento\Backend\Model\View\Result\Redirect $resultRedirect */ $resultRedirect = $this->resultRedirectFactory->create(); if ($data) { $data['variable_id'] = $variable->getId(); $variable->setData($data); try { $variable->save(); $this->messageManager->addSuccess(__('You saved the custom variable.')); if ($back) { $resultRedirect->setPath( 'adminhtml/*/edit', ['_current' => true, 'variable_id' => $variable->getId()] ); } else { $resultRedirect->setPath('adminhtml/*/'); } return $resultRedirect; } catch (\Exception $e) { $this->messageManager->addError($e->getMessage()); return $resultRedirect->setPath('adminhtml/*/edit', ['_current' => true]); } } return $resultRedirect->setPath('adminhtml/*/'); } }