b374k
m1n1 1.01
Apache/2.4.41 (Ubuntu)
Linux vmi616275.contaboserver.net 5.4.0-84-generic #94-Ubuntu SMP Thu Aug 26 20:27:37 UTC 2021 x86_64
uid=33(www-data) gid=33(www-data) groups=33(www-data)
server ip : 62.171.164.128 | your ip : 127.0.0.1
safemode OFF
 >  / home / Mirasvit / Search / Controller / Adminhtml / Index /
Filename/home/Mirasvit/Search/Controller/Adminhtml/Index/Save.php
Size2.7 kb
Permissionrwxr-xr-x
Ownerroot : root
Create time01-Jul-2024 20:52
Last modified06-Apr-2021 18:06
Last accessed21-Aug-2025 22:34
Actionsedit | rename | delete | download (gzip)
Viewtext | code | image
<?php
/**
* Mirasvit
*
* This source file is subject to the Mirasvit Software License, which is available at https://mirasvit.com/license/.
* Do not edit or add to this file if you wish to upgrade the to newer versions in the future.
* If you wish to customize this module for your needs.
* Please refer to http://www.magentocommerce.com for more information.
*
* @category Mirasvit
* @package mirasvit/module-search-ultimate
* @version 2.0.25
* @copyright Copyright (C) 2021 Mirasvit (https://mirasvit.com/)
*/


declare(strict_types=1);

namespace Mirasvit\Search\Controller\Adminhtml\Index;

use Mirasvit\Search\Api\Data\IndexInterface;
use Mirasvit\Search\Controller\Adminhtml\AbstractIndex;

class Save extends AbstractIndex
{
/**
* {@inheritdoc}
*/
public function execute()
{
$id = $this->getRequest()->getParam('id');

$resultRedirect = $this->resultRedirectFactory->create();

if ($this->getRequest()->getParams()) {
$index = $this->initModel();

if (!$index->getId() && $id) {
$this->messageManager->addErrorMessage((string)__('This search index no longer exists.'));

return $resultRedirect->setPath('*/*/');
}

$attributes = $this->getRequest()->getParam('attributes') ?? [];
$properties = $this->getRequest()->getParam('properties') ?? [];

$index
->setStatus(IndexInterface::STATUS_INVALID)
->setTitle($this->getRequest()->getParam(IndexInterface::TITLE))
->setIdentifier($this->getRequest()->getParam(IndexInterface::IDENTIFIER))
->setIsActive((bool)$this->getRequest()->getParam(IndexInterface::IS_ACTIVE))
->setPosition((int)$this->getRequest()->getParam(IndexInterface::POSITION))
->setAttributes($attributes)
->setProperties($properties);

try {
$this->indexRepository->save($index);

$this->messageManager->addSuccessMessage((string)__('You have saved the search index.'));

if ($this->getRequest()->getParam('back')) {
return $resultRedirect->setPath('*/*/edit', [IndexInterface::ID => $index->getId()]);
}

return $resultRedirect->setPath('*/*/');
} catch (\Exception $e) {
$this->messageManager->addErrorMessage($e->getMessage());

return $resultRedirect->setPath('*/*/edit', [IndexInterface::ID => $id]);
}
} else {
$resultRedirect->setPath('*/*/');
$this->messageManager->addErrorMessage('No data to save.');

return $resultRedirect;
}
}
}