diff --git a/typo3/sysext/workspaces/Classes/Hook/PreviewHook.php b/typo3/sysext/workspaces/Classes/Hook/PreviewHook.php index d367037ae78ee16fd12cbddfe7f1cdd49a469922..a63c4753aeb423c1b467b74170bddf20733dd70d 100644 --- a/typo3/sysext/workspaces/Classes/Hook/PreviewHook.php +++ b/typo3/sysext/workspaces/Classes/Hook/PreviewHook.php @@ -114,6 +114,8 @@ class PreviewHook implements \TYPO3\CMS\Core\SingletonInterface $tempBackendUser->setBeUserByUid($this->previewConfiguration['BEUSER_uid']); if ($tempBackendUser->user['uid']) { $tempBackendUser->unpack_uc(); + $tempBackendUser->setTemporaryWorkspace($workspaceUid); + $tempBackendUser->user['workspace_id'] = $workspaceUid; $tempBackendUser->fetchGroupData(); // Handle degradation of admin users if ($tempBackendUser->isAdmin()) { @@ -137,7 +139,7 @@ class PreviewHook implements \TYPO3\CMS\Core\SingletonInterface ->execute() ->fetch(); - // Either use configured workspace mount or current page id, if admin user does not have any page mounts + // Either use configured workspace mount (of the workspace) or current page id if (empty($tempBackendUser->groupData['webmounts'])) { $tempBackendUser->groupData['webmounts'] = !empty($workspaceRecord['db_mountpoints']) ? $workspaceRecord['db_mountpoints'] : $pObj->id; }