[TASK] Move rootPage resolving into PSR-15 middleware 64/56664/2
authorBenni Mack <benni@typo3.org>
Sun, 15 Apr 2018 07:38:15 +0000 (09:38 +0200)
committerBenni Mack <benni@typo3.org>
Sun, 15 Apr 2018 10:17:17 +0000 (12:17 +0200)
commitfe1892cbcdb0830223157cb1fd7f59c8b99c8422
tree602ca46d624f22eb4679d79e92ceacee44b31afd
parentca1c88c2df4e8d7929c67e5487b24ac5478e8e45
[TASK] Move rootPage resolving into PSR-15 middleware

The functionality to resolve the "domain start page" - the page ID
where a sys_domain record is found, is moved from TSFE/sys_page
into the SiteResolver middleware, making the domain start page value
available at an earlier point of a request.

Change of behaviours:
- TSFE->domainStartPage is now filled earlier than before
- TSFE->domainStartPage is now filled regardless of access checks of the
permissions of that page record, as the check is done later-on again anyways.

For the sake of completeness:
If a site is configured, this code is not executed anymore, as the site contains
the rootpage ID already anyways.

The method "TypoScriptFrontendController->findDomainRecord"
is removed, as it was marked as private and should have not been
used outside TYPO3 Core.

The method "PageRepository->getDomainStartPage" is marked
as deprecated as it is not called anymore.

Resolves: #84725
Releases: master
Change-Id: I5c420701eb463630d6286578ff582cb0e4e1dd35
Reviewed-on: https://review.typo3.org/56664
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Frans Saris <franssaris@gmail.com>
Tested-by: Frans Saris <franssaris@gmail.com>
Reviewed-by: Stefan Neufeind <typo3.neufeind@speedpartner.de>
Tested-by: Stefan Neufeind <typo3.neufeind@speedpartner.de>
Reviewed-by: Benni Mack <benni@typo3.org>
Tested-by: Benni Mack <benni@typo3.org>
typo3/sysext/core/Documentation/Changelog/master/Deprecation-84725-SysDomainResolvingMovedIntoMiddleware.rst [new file with mode: 0644]
typo3/sysext/frontend/Classes/Controller/TypoScriptFrontendController.php
typo3/sysext/frontend/Classes/Middleware/SiteResolver.php
typo3/sysext/frontend/Classes/Page/PageRepository.php
typo3/sysext/install/Configuration/ExtensionScanner/Php/MethodCallMatcher.php