2 declare(strict_types = 1);
19 use Psr\Http\Message\ServerRequestInterface;
64 if ($identifier ===
'' || $option ===
'') {
65 throw new \InvalidArgumentException(
'Identifier and option may not be empty', 1532861423);
68 if (isset($this->mainConfiguration[
'override.'][$identifier .
'.'][$option])) {
69 $returnValue = $this->mainConfiguration[
'override.'][$identifier .
'.'][$option];
71 $returnValue = $this->
getBackendUser()->uc[
'AdminPanel'][$identifier .
'_' . $option] ??
'';
74 return (
string)$returnValue;
85 public function saveConfiguration(array $modules, ServerRequestInterface $request): void
87 $configurationToSave = $request->getParsedBody()[
'TSFE_ADMIN_PANEL'] ?? [];
91 $existingConfiguration = $beUser->uc[
'AdminPanel'] ?? [];
92 $existingConfiguration = is_array($existingConfiguration) ? $existingConfiguration : [];
95 $beUser->uc[
'AdminPanel'] = array_merge($existingConfiguration, $configurationToSave);
96 unset($beUser->uc[
'AdminPanel'][
'action']);
118 ServerRequestInterface $request,
121 foreach ($modules as $module) {
123 $module instanceof OnSubmitActorInterface
125 ($module instanceof ConfigurableInterface && $module->isEnabled())
126 || !($module instanceof ConfigurableInterface)
129 $module->onSubmit($configurationToSave, $request);
131 if ($module instanceof SubmoduleProviderInterface) {