[FEATURE] Introduce ignoreFlexFormSettingsIfEmpty extbase configuration
Extbase extension settings defined in FlexForm always override settings defined globally in TypoScript. This is a problem for FlexForm fields which are empty, since an empty value will always override a possible globally defined TypoScript setting. This behavior might be unwanted and in case of EXT:felogin, it is currently not possible to define various settings in TypoScript (e.g. redirect PIDs, storage PID and more), since they are unintentionally overridden by FlexForm settings. This patch introduces the new extbase TypoScript configuration `ignoreFlexFormSettingsIfEmpty`, which allows extbase extensions to define FlexForm settings, that will be ignored if empty. Additionally, the new PSR-14 event `BeforeFlexFormConfigurationOverrideEvent` is available for extension authors, so a custom FlexForm override process can be implemented. The new feature is now used in ext:felogin to prevent unwanted overrides of globally defined TypoScript extension settings. Resolves: #99976 Related: #92363 Related: #61649 Releases: main Signed-off-by:Torben Hansen <derhansen@gmail.com> Change-Id: Ie565276d4cb0850f041ca2faead76f44e5e578c0 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/77885 Reviewed-by:
Oliver Hader <oliver.hader@typo3.org> Reviewed-by:
Nikita Hovratov <nikita.h@live.de> Tested-by:
Georg Ringer <georg.ringer@gmail.com> Reviewed-by:
Alexander Schnitzler <git@alexanderschnitzler.de> Tested-by:
Nikita Hovratov <nikita.h@live.de> Tested-by:
core-ci <typo3@b13.com> Reviewed-by:
Georg Ringer <georg.ringer@gmail.com> Tested-by:
Alexander Schnitzler <git@alexanderschnitzler.de>
Showing
- typo3/sysext/core/Documentation/Changelog/12.3/Feature-99976-IntroduceignoreFlexFormSettingsIfEmptyExtbaseConfiguration.rst 114 additions, 0 deletions...duceignoreFlexFormSettingsIfEmptyExtbaseConfiguration.rst
- typo3/sysext/extbase/Classes/Configuration/FrontendConfigurationManager.php 43 additions, 5 deletions...se/Classes/Configuration/FrontendConfigurationManager.php
- typo3/sysext/extbase/Classes/Event/Configuration/BeforeFlexFormConfigurationOverrideEvent.php 55 additions, 0 deletions...onfiguration/BeforeFlexFormConfigurationOverrideEvent.php
- typo3/sysext/extbase/Tests/Functional/Configuration/FrontendConfigurationManagerTest.php 366 additions, 0 deletions...tional/Configuration/FrontendConfigurationManagerTest.php
- typo3/sysext/extbase/Tests/Unit/Configuration/FrontendConfigurationManagerTest.php 2 additions, 0 deletions...s/Unit/Configuration/FrontendConfigurationManagerTest.php
- typo3/sysext/extbase/Tests/Unit/Event/Configuration/BeforeFlexFormConfigurationOverrideEventTest.php 56 additions, 0 deletions...guration/BeforeFlexFormConfigurationOverrideEventTest.php
- typo3/sysext/felogin/Configuration/TypoScript/setup.typoscript 12 additions, 0 deletions.../sysext/felogin/Configuration/TypoScript/setup.typoscript
Please register or sign in to comment