From d54560bac32a695cdb67287be43769b4d3b1c6f3 Mon Sep 17 00:00:00 2001 From: Oliver Bartsch <bo@cedev.de> Date: Mon, 18 Dec 2023 08:55:59 +0100 Subject: [PATCH] [BUGFIX] Display inherited module workspace access restriction Workspace access permissions of backend modules are inherited. This is now poperly reflected in the configuration module and also documented in the changelog. Resolves: #102688 Releases: main, 12.4 Change-Id: I83a81713653c1e0dee3c79ba0762b459179a504a Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/82130 Tested-by: core-ci <typo3@b13.com> Tested-by: Oliver Bartsch <bo@cedev.de> Reviewed-by: Oliver Bartsch <bo@cedev.de> --- .../12.0/Feature-96733-NewBackendModuleRegistrationAPI.rst | 3 ++- .../ConfigurationModuleProvider/BackendModuleProvider.php | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/typo3/sysext/core/Documentation/Changelog/12.0/Feature-96733-NewBackendModuleRegistrationAPI.rst b/typo3/sysext/core/Documentation/Changelog/12.0/Feature-96733-NewBackendModuleRegistrationAPI.rst index 01f1bdc08383..156fd937a348 100644 --- a/typo3/sysext/core/Documentation/Changelog/12.0/Feature-96733-NewBackendModuleRegistrationAPI.rst +++ b/typo3/sysext/core/Documentation/Changelog/12.0/Feature-96733-NewBackendModuleRegistrationAPI.rst @@ -130,7 +130,8 @@ Module configuration options | access (:php:`string`) | Can be `user` (editor permissions), `admin`, or | | | `systemMaintainer`. | +----------------------------------------------------------+------------------------------------------------------------------+ -| workspaces (:php:`string`) | Can be `*` (= always), `live` or `offline` | +| workspaces (:php:`string`) | Can be `*` (= always), `live` or `offline`. If not set, the | +| | value of the parent module - if any - is used. | +----------------------------------------------------------+------------------------------------------------------------------+ | position (:php:`array`) | The module position. Allowed values are `before => <identifier>` | | | and `after => <identifier>`. To define modules on top or at the | diff --git a/typo3/sysext/lowlevel/Classes/ConfigurationModuleProvider/BackendModuleProvider.php b/typo3/sysext/lowlevel/Classes/ConfigurationModuleProvider/BackendModuleProvider.php index 240dc0bde903..ab5061488bc9 100644 --- a/typo3/sysext/lowlevel/Classes/ConfigurationModuleProvider/BackendModuleProvider.php +++ b/typo3/sysext/lowlevel/Classes/ConfigurationModuleProvider/BackendModuleProvider.php @@ -38,7 +38,7 @@ class BackendModuleProvider extends AbstractProvider 'access' => $module->getAccess(), 'aliases' => $module->getAliases(), 'position' => $module->getPosition(), - 'workspaces' => $module->getWorkspaceAccess(), + 'workspaces' => $module->getWorkspaceAccess() ?: $module->getParentModule()?->getWorkspaceAccess(), 'isStandalone' => $module->isStandalone() ? 'true' : 'false', 'submodules' => $module->hasSubModules() ? implode(',', array_keys($module->getSubModules())) : '', 'path' => $module->getPath(), -- GitLab