[BUGFIX] Reverse rootline for PageLayoutResolver calls
There have been quite a lot of patches around the pagelayout condition, which was introduced in early TYPO3 v11. It was broken in the beginning and got fixed with #98044. Soon after, a major refactoring of the ConditionMatcher has been applied with #100047, which re-introduced bugs regarding the pagelayout TypoScript condition. These have partially fixed with #100764 and #100921. The affected code is a bit messy due to a weird sorted array returned by the 'rootline' methods and classes, which we can't resolve right now. The fix itself revolves a last issue by reversing the rootline again. This was already done in the old backend ConditionMatcher. The frontend ConditionMatcher received the fullRootline, which is already reversed (deepest first). With the introduction of IncludeTreeConditionMatcherVisitor this has been unified, but the array_reverse was forgotten. In addition, the fullRootline from the frontend controller and BackendUtility::getPage...
Showing
- typo3/sysext/core/Classes/TypoScript/IncludeTree/Visitor/IncludeTreeConditionMatcherVisitor.php 5 additions, 3 deletions...ncludeTree/Visitor/IncludeTreeConditionMatcherVisitor.php
- typo3/sysext/core/Tests/Functional/TypoScript/Fixtures/FrontendTypoScriptFactoryPageLayoutCondition/backendLayoutAndNextLevelOnRoot.csv 4 additions, 0 deletions...ryPageLayoutCondition/backendLayoutAndNextLevelOnRoot.csv
- typo3/sysext/core/Tests/Functional/TypoScript/Fixtures/FrontendTypoScriptFactoryPageLayoutCondition/backendLayoutAndNextLevelOnRootSetup.typoscript 6 additions, 0 deletions...Condition/backendLayoutAndNextLevelOnRootSetup.typoscript
- typo3/sysext/core/Tests/Functional/TypoScript/Fixtures/FrontendTypoScriptFactoryPageLayoutCondition/backendLayoutAndNextLevelOnRootSubOverride1.csv 5 additions, 0 deletions...Condition/backendLayoutAndNextLevelOnRootSubOverride1.csv
- typo3/sysext/core/Tests/Functional/TypoScript/Fixtures/FrontendTypoScriptFactoryPageLayoutCondition/backendLayoutAndNextLevelOnRootSubOverride1Setup.typoscript 6 additions, 0 deletions...ckendLayoutAndNextLevelOnRootSubOverride1Setup.typoscript
- typo3/sysext/core/Tests/Functional/TypoScript/Fixtures/FrontendTypoScriptFactoryPageLayoutCondition/backendLayoutAndNextLevelOnRootSubOverride2.csv 6 additions, 0 deletions...Condition/backendLayoutAndNextLevelOnRootSubOverride2.csv
- typo3/sysext/core/Tests/Functional/TypoScript/Fixtures/FrontendTypoScriptFactoryPageLayoutCondition/backendLayoutAndNextLevelOnRootSubOverride2Setup.typoscript 6 additions, 0 deletions...ckendLayoutAndNextLevelOnRootSubOverride2Setup.typoscript
- typo3/sysext/core/Tests/Functional/TypoScript/Fixtures/FrontendTypoScriptFactoryPageLayoutCondition/backendLayoutAndNextLevelOnRootSubOverride3.csv 6 additions, 0 deletions...Condition/backendLayoutAndNextLevelOnRootSubOverride3.csv
- typo3/sysext/core/Tests/Functional/TypoScript/Fixtures/FrontendTypoScriptFactoryPageLayoutCondition/backendLayoutAndNextLevelOnRootSubOverride3Setup.typoscript 6 additions, 0 deletions...ckendLayoutAndNextLevelOnRootSubOverride3Setup.typoscript
- typo3/sysext/core/Tests/Functional/TypoScript/Fixtures/FrontendTypoScriptFactoryPageLayoutCondition/backendLayoutNextLevelOnRoot.csv 3 additions, 0 deletions...ctoryPageLayoutCondition/backendLayoutNextLevelOnRoot.csv
- typo3/sysext/core/Tests/Functional/TypoScript/Fixtures/FrontendTypoScriptFactoryPageLayoutCondition/backendLayoutNextLevelOnRootSetup.typoscript 7 additions, 0 deletions...outCondition/backendLayoutNextLevelOnRootSetup.typoscript
- typo3/sysext/core/Tests/Functional/TypoScript/Fixtures/FrontendTypoScriptFactoryPageLayoutCondition/backendLayoutOnRoot.csv 3 additions, 0 deletions...oScriptFactoryPageLayoutCondition/backendLayoutOnRoot.csv
- typo3/sysext/core/Tests/Functional/TypoScript/Fixtures/FrontendTypoScriptFactoryPageLayoutCondition/backendLayoutOnRootSetup.typoscript 6 additions, 0 deletions...ryPageLayoutCondition/backendLayoutOnRootSetup.typoscript
- typo3/sysext/core/Tests/Functional/TypoScript/Fixtures/PageTsConfigFactoryPageLayoutCondition/backendLayoutAndNextLevelOnRootPage.csv 7 additions, 0 deletions...geLayoutCondition/backendLayoutAndNextLevelOnRootPage.csv
- typo3/sysext/core/Tests/Functional/TypoScript/Fixtures/PageTsConfigFactoryPageLayoutCondition/backendLayoutAndNextLevelOnRootPageSubOverride1.csv 8 additions, 0 deletions...ition/backendLayoutAndNextLevelOnRootPageSubOverride1.csv
- typo3/sysext/core/Tests/Functional/TypoScript/Fixtures/PageTsConfigFactoryPageLayoutCondition/backendLayoutAndNextLevelOnRootPageSubOverride2.csv 9 additions, 0 deletions...ition/backendLayoutAndNextLevelOnRootPageSubOverride2.csv
- typo3/sysext/core/Tests/Functional/TypoScript/Fixtures/PageTsConfigFactoryPageLayoutCondition/backendLayoutAndNextLevelOnRootPageSubOverride3.csv 9 additions, 0 deletions...ition/backendLayoutAndNextLevelOnRootPageSubOverride3.csv
- typo3/sysext/core/Tests/Functional/TypoScript/Fixtures/PageTsConfigFactoryPageLayoutCondition/backendLayoutNextLevelOnRootPage.csv 6 additions, 0 deletions...yPageLayoutCondition/backendLayoutNextLevelOnRootPage.csv
- typo3/sysext/core/Tests/Functional/TypoScript/Fixtures/PageTsConfigFactoryPageLayoutCondition/backendLayoutOnRootPage.csv 6 additions, 0 deletions...figFactoryPageLayoutCondition/backendLayoutOnRootPage.csv
- typo3/sysext/core/Tests/Functional/TypoScript/FrontendTypoScriptFactoryPageLayoutConditionTest.php 140 additions, 0 deletions...ript/FrontendTypoScriptFactoryPageLayoutConditionTest.php
Please register or sign in to comment