From 72c7d213468b204a756ed96869491d4dec8e67c6 Mon Sep 17 00:00:00 2001 From: Simon Rettberg Date: Fri, 10 Jun 2022 12:00:55 +0200 Subject: [runmode] Show error if no permissions Closes #3909 --- modules-available/runmode/page.inc.php | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/modules-available/runmode/page.inc.php b/modules-available/runmode/page.inc.php index a551ddc5..cceefae8 100644 --- a/modules-available/runmode/page.inc.php +++ b/modules-available/runmode/page.inc.php @@ -222,16 +222,20 @@ class Page_RunMode extends Page } $modules[$row['module']]['list'][] = $row; } + $anythingOk = false; foreach ($modules as $moduleId => $rows) { $disabled = ''; if ($onlyModule === false) { // Permissions - not required if rendering specific module, since it's been already done + // in $this->renderModule() + /** @var array{config: RunModeModuleConfig} $rows */ if (!$rows['config']->userHasPermission(null)) { if (!User::hasPermission('list-all')) continue; $disabled = 'disabled'; } // } + $anythingOk = true; $module = Module::get($moduleId); if ($module === false) continue; @@ -245,6 +249,9 @@ class Page_RunMode extends Page 'disabled' => $disabled, )); } + if (!empty($modules) && !$anythingOk) { + User::assertPermission('list-all'); + } } /** -- cgit v1.2.3-55-g7522