2 declare(strict_types = 1);
18 use Psr\Http\Message\ResponseInterface;
19 use Psr\Http\Message\ServerRequestInterface;
20 use TYPO3\CMS\Core\Configuration\ConfigurationManager;
44 public function initAction(ServerRequestInterface $request): ResponseInterface
47 $view->assignMultiple([
50 'siteName' =>
$GLOBALS[
'TYPO3_CONF_VARS'][
'SYS'][
'sitename'],
56 'Cache-Control' =>
'no-cache, must-revalidate',
57 'Pragma' =>
'no-cache'
75 'html' => $view->render(),
89 $silentUpdate->execute();
94 'success' => $success,
108 $configurationManager =
new ConfigurationManager();
110 $oldExtConfSettings = $configurationManager->getConfigurationValueByPath(
'EXT/extConf');
113 $oldExtConfSettings = [];
116 $newExtensionSettings = $configurationManager->getConfigurationValueByPath(
'EXTENSIONS');
119 $newExtensionSettings = [];
121 foreach ($oldExtConfSettings as $extensionName => $extensionSettings) {
122 if (!array_key_exists($extensionName, $newExtensionSettings)) {
123 $unserializedConfiguration = unserialize($extensionSettings, [
'allowed_classes' =>
false]);
124 if (is_array($unserializedConfiguration)) {
126 $configurationManager->setLocalConfigurationValueByPath(
'EXTENSIONS/' . $extensionName, $newExtensionSettings);
146 $extensionConfiguration->synchronizeExtConfTemplateWithLocalConfigurationOfAllExtensions();
164 $settingsWithoutDots = [];
165 foreach ($settings as $key => $value) {
166 if (is_array($value)) {
169 $settingsWithoutDots[$key] = $value;
172 return $settingsWithoutDots;