From 2fd159f577bd23cab757a68852d084aa7f3abd13 Mon Sep 17 00:00:00 2001 From: Susanne Moog <susanne.moog@typo3.com> Date: Fri, 17 May 2019 14:22:42 +0200 Subject: [PATCH] [BUGFIX] Respect sys_language_uid when fetching records for link browser The link browser now respects the sys_language_uid of the active page record when selecting content elements to link to instead of showing all content elements on that pid. Resolves: #88382 Releases: master, 9.5 Change-Id: I3f292f7af3bdfb746811f8f3937216b18a777520 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/60775 Tested-by: TYPO3com <noreply@typo3.com> Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de> Tested-by: Benni Mack <benni@typo3.org> Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de> Reviewed-by: Benni Mack <benni@typo3.org> --- .../Classes/LinkHandler/PageLinkHandler.php | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/typo3/sysext/recordlist/Classes/LinkHandler/PageLinkHandler.php b/typo3/sysext/recordlist/Classes/LinkHandler/PageLinkHandler.php index d338452065f4..71f45dcab7c0 100644 --- a/typo3/sysext/recordlist/Classes/LinkHandler/PageLinkHandler.php +++ b/typo3/sysext/recordlist/Classes/LinkHandler/PageLinkHandler.php @@ -17,6 +17,7 @@ namespace TYPO3\CMS\Recordlist\LinkHandler; use Psr\Http\Message\ServerRequestInterface; use TYPO3\CMS\Backend\Tree\View\ElementBrowserPageTreeView; use TYPO3\CMS\Backend\Utility\BackendUtility; +use TYPO3\CMS\Core\Database\Connection; use TYPO3\CMS\Core\Database\ConnectionPool; use TYPO3\CMS\Core\Database\Query\Restriction\BackendWorkspaceRestriction; use TYPO3\CMS\Core\Database\Query\Restriction\DeletedRestriction; @@ -158,9 +159,15 @@ class PageLinkHandler extends AbstractLinkHandler implements LinkHandlerInterfac ->select('*') ->from('tt_content') ->where( - $queryBuilder->expr()->eq( - 'pid', - $queryBuilder->createNamedParameter($pageId, \PDO::PARAM_INT) + $queryBuilder->expr()->andX( + $queryBuilder->expr()->eq( + 'pid', + $queryBuilder->createNamedParameter($pageId, \PDO::PARAM_INT) + ), + $queryBuilder->expr()->in( + 'sys_language_uid', + $queryBuilder->createNamedParameter([$activePageRecord['sys_language_uid'], -1], Connection::PARAM_INT_ARRAY) + ) ) ) ->orderBy('colPos') -- GitLab