diff --git a/typo3/sysext/backend/Classes/Controller/FormInlineAjaxController.php b/typo3/sysext/backend/Classes/Controller/FormInlineAjaxController.php index 83e239f..29c42e6 100644 --- a/typo3/sysext/backend/Classes/Controller/FormInlineAjaxController.php +++ b/typo3/sysext/backend/Classes/Controller/FormInlineAjaxController.php @@ -93,6 +93,12 @@ class FormInlineAjaxController /** @var FormDataCompiler $formDataCompiler */ $formDataCompiler = GeneralUtility::makeInstance(FormDataCompiler::class, $formDataGroup); $parentData = $formDataCompiler->compile($formDataCompilerInputForParent); + if (isset($ajaxArguments['context'])) { + $context = json_decode($ajaxArguments['context'], true); + if (GeneralUtility::hmac(serialize($context['config'])) === $context['hmac']) { + $parentData['processedTca']['columns'][$parentFieldName]['config'] = $context['config']; + } + } $parentConfig = $parentData['processedTca']['columns'][$parentFieldName]['config']; // Child, a record from this table should be rendered @@ -264,6 +270,12 @@ class FormInlineAjaxController /** @var FormDataCompiler $formDataCompiler */ $formDataCompiler = GeneralUtility::makeInstance(FormDataCompiler::class, $formDataGroup); $parentData = $formDataCompiler->compile($formDataCompilerInputForParent); + if (isset($ajaxArguments['context'])) { + $context = json_decode($ajaxArguments['context'], true); + if (GeneralUtility::hmac(serialize($context['config'])) === $context['hmac']) { + $parentData['processedTca']['columns'][$parentFieldName]['config'] = $context['config']; + } + } $parentConfig = $parentData['processedTca']['columns'][$parentFieldName]['config']; if ($parentConfig['type'] === 'flex') { @@ -366,6 +378,12 @@ class FormInlineAjaxController /** @var FormDataCompiler $formDataCompiler */ $formDataCompiler = GeneralUtility::makeInstance(FormDataCompiler::class, $formDataGroup); $parentData = $formDataCompiler->compile($formDataCompilerInputForParent); + if (isset($ajaxArguments['context'])) { + $context = json_decode($ajaxArguments['context'], true); + if (GeneralUtility::hmac(serialize($context['config'])) === $context['hmac']) { + $parentData['processedTca']['columns'][$parentFieldName]['config'] = $context['config']; + } + } $parentConfig = $parentData['processedTca']['columns'][$parentFieldName]['config']; $parentLanguageField = $parentData['processedTca']['ctrl']['languageField']; $parentLanguage = $parentData['databaseRow'][$parentLanguageField];