Viewing file: SetConfigController.php (1.26 KB) -rwxr-x--- Select action/file-type: (+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
<?php
declare(strict_types=1);
namespace PhpMyAdmin\Controllers\Config;
use PhpMyAdmin\Config; use PhpMyAdmin\Controllers\AbstractController; use PhpMyAdmin\Http\ServerRequest; use PhpMyAdmin\Message; use PhpMyAdmin\ResponseRenderer; use PhpMyAdmin\Template;
use function json_decode;
final class SetConfigController extends AbstractController { /** @var Config */ private $config;
public function __construct(ResponseRenderer $response, Template $template, Config $config) { parent::__construct($response, $template); $this->config = $config; }
public function __invoke(ServerRequest $request): void { /** @var string|null $key */ $key = $request->getParsedBodyParam('key'); /** @var string|null $value */ $value = $request->getParsedBodyParam('value');
if (! isset($key, $value)) { $this->response->setRequestStatus(false); $this->response->addJSON(['message' => Message::error()]);
return; }
$result = $this->config->setUserValue(null, $key, json_decode($value));
if ($result === true) { return; }
$this->response->setRequestStatus(false); $this->response->addJSON(['message' => $result]); } }
|