From 29806af975128bd7e06b071c0c96ce2f2fb6c4a6 Mon Sep 17 00:00:00 2001 From: tianshujie Date: Tue, 20 Feb 2024 09:31:15 +0800 Subject: [PATCH] * Fix bug #41791. --- module/project/control.php | 24 ++++++++++++++++++------ 1 file changed, 18 insertions(+), 6 deletions(-) diff --git a/module/project/control.php b/module/project/control.php index 99dee1aecf..1fb862b6a5 100755 --- a/module/project/control.php +++ b/module/project/control.php @@ -993,11 +993,7 @@ class project extends control public function managePriv(int $projectID, int $groupID = 0) { $this->loadModel('group'); - - foreach($this->lang->resource as $moduleName => $action) - { - $this->app->loadLang($moduleName); - } + foreach($this->lang->resource as $moduleName => $action) $this->app->loadLang($moduleName); if(!empty($_POST)) { @@ -1017,9 +1013,25 @@ class project extends control $this->lang->resource = $this->project->getPrivsByModel($project->multiple ? $project->model : 'noSprint'); + $getPrivs = $this->group->getPrivs($groupID); + foreach($getPrivs as $moduleName => $actions) + { + if(!isset($this->lang->resource->$moduleName)) + { + unset($getPrivs[$moduleName]); + } + else + { + foreach($actions as $method => $value) + { + if(!isset($this->lang->resource->{$moduleName}->{$method})) unset($getPrivs[$moduleName][$method]); + } + } + } + $this->view->title = $group->name . $this->lang->colon . $this->lang->group->managePriv; $this->view->group = $group; - $this->view->groupPrivs = $this->group->getPrivs($groupID); + $this->view->groupPrivs = $getPrivs; $this->view->groupID = $groupID; $this->view->projectID = $projectID; $this->view->project = $project;