diff --git a/typo3/sysext/backend/Classes/Controller/Page/TreeController.php b/typo3/sysext/backend/Classes/Controller/Page/TreeController.php index a5573b859a03bf3c7625b040a5e63700238dce7d..75b41b874d7a028abd5aec171fe4333877be6b44 100644 --- a/typo3/sysext/backend/Classes/Controller/Page/TreeController.php +++ b/typo3/sysext/backend/Classes/Controller/Page/TreeController.php @@ -416,10 +416,7 @@ class TreeController } } - $entryPoint = $repository->getTree($entryPoint, function ($page) use ($backendUser) { - // Check each page if the user has permission to access it - return $backendUser->doesUserHaveAccess($page, Permission::PAGE_SHOW); - }); + $entryPoint = $repository->getTree($entryPoint); if (!is_array($entryPoint)) { unset($entryPoints[$k]); } diff --git a/typo3/sysext/backend/Classes/Tree/Repository/PageTreeRepository.php b/typo3/sysext/backend/Classes/Tree/Repository/PageTreeRepository.php index 10031b0c2dca4d094449ddf6dad0bd5c364f93cb..36c1db53937ebaf802f48e71e6b06a6cafa1a366 100644 --- a/typo3/sysext/backend/Classes/Tree/Repository/PageTreeRepository.php +++ b/typo3/sysext/backend/Classes/Tree/Repository/PageTreeRepository.php @@ -72,6 +72,8 @@ class PageTreeRepository 'shortcut_mode', 'mount_pid_ol', 'url', + 'sys_language_uid', + 'l10n_parent', ]; /** diff --git a/typo3/sysext/core/Classes/Authentication/BackendUserAuthentication.php b/typo3/sysext/core/Classes/Authentication/BackendUserAuthentication.php index 58f4d47c9480c264c5673802818b9f987011b06f..87e728845d3d48c90c38727fae69e3f478c74467 100644 --- a/typo3/sysext/core/Classes/Authentication/BackendUserAuthentication.php +++ b/typo3/sysext/core/Classes/Authentication/BackendUserAuthentication.php @@ -598,8 +598,7 @@ class BackendUserAuthentication extends AbstractUserAuthentication return Permission::ALL; } // Return 0 if page is not within the allowed web mount - // Always do this for the default language page record - if (!$this->isInWebMount($row[$GLOBALS['TCA']['pages']['ctrl']['transOrigPointerField']] ?: $row)) { + if (!$this->isInWebMount($row)) { return Permission::NOTHING; } $out = Permission::NOTHING;