From dace9eef47a0928e0c7c58c95711fa265f04f2fb Mon Sep 17 00:00:00 2001 From: daitingting Date: Tue, 23 Jan 2024 08:19:36 +0000 Subject: [PATCH] * Adjust acl. --- module/program/control.php | 2 -- module/program/js/create.ui.js | 2 +- module/program/js/edit.ui.js | 2 +- module/program/ui/common.field.php | 9 ++++++++- module/program/ui/create.field.php | 3 ++- module/program/ui/edit.field.php | 6 +++++- module/program/zen.php | 6 ++---- 7 files changed, 19 insertions(+), 11 deletions(-) diff --git a/module/program/control.php b/module/program/control.php index 0a55d830e7..2a98032811 100644 --- a/module/program/control.php +++ b/module/program/control.php @@ -176,7 +176,6 @@ class program extends control $this->view->programList = $this->program->getList(); $this->view->budgetUnitList = $this->project->getBudgetUnitList(); $this->view->budgetLeft = empty($parentProgram) ? 0 : $this->program->getBudgetLeft($parentProgram); - $this->view->groups = $this->loadModel('group')->getPairs(); $this->view->loadUrl = $this->createLink('program', 'create', "parentProgramID={parent}" . (empty($originExtra) ? '' : "&extra=$originExtra")); $this->display(); @@ -221,7 +220,6 @@ class program extends control $this->view->parents = $parents; $this->view->budgetUnitList = $this->loadModel('project')->getBudgetUnitList(); $this->view->parentProgram = $parentProgram; - $this->view->groups = $this->loadModel('group')->getPairs(); $this->view->loadUrl = $this->createLink('program', 'edit', "programID=$programID&parentProgramID={parent}"); $this->display(); diff --git a/module/program/js/create.ui.js b/module/program/js/create.ui.js index 3c8fcd52c8..5e6635e609 100644 --- a/module/program/js/create.ui.js +++ b/module/program/js/create.ui.js @@ -14,5 +14,5 @@ window.outOfDateTip = function() window.onAclChange = () => { - $('.whitelistBox').toggleClass('hidden', $('#aclopen').prop('checked')); + $('[data-name=whitelist]').toggleClass('hidden', $('#aclopen').prop('checked')); }; diff --git a/module/program/js/edit.ui.js b/module/program/js/edit.ui.js index 3c8fcd52c8..5e6635e609 100644 --- a/module/program/js/edit.ui.js +++ b/module/program/js/edit.ui.js @@ -14,5 +14,5 @@ window.outOfDateTip = function() window.onAclChange = () => { - $('.whitelistBox').toggleClass('hidden', $('#aclopen').prop('checked')); + $('[data-name=whitelist]').toggleClass('hidden', $('#aclopen').prop('checked')); }; diff --git a/module/program/ui/common.field.php b/module/program/ui/common.field.php index a584c99337..1e980b1d09 100644 --- a/module/program/ui/common.field.php +++ b/module/program/ui/common.field.php @@ -53,4 +53,11 @@ $fields->field('desc') ->control('editor'); $fields->field('acl') - ->width('full'); + ->width('full') + ->control('radioList'); + +$fields->field('whitelist') + ->width('full') + ->control('whiteList') + ->items(data('users')) + ->hidden(true); diff --git a/module/program/ui/create.field.php b/module/program/ui/create.field.php index 2b5bd8e199..2a78b52019 100644 --- a/module/program/ui/create.field.php +++ b/module/program/ui/create.field.php @@ -13,4 +13,5 @@ $fields->field('begin') ->itemBegin('end')->require()->type('datePicker')->placeholder($lang->project->end)->itemEnd(); $fields->field('acl') - ->control(array('control' => 'aclBox', 'aclItems' => data('parentProgram') ? $lang->program->subAclList : $lang->program->aclList, 'aclValue' => 'open', 'whitelistLabel' => $lang->program->whitelist, 'groupLabel' => $lang->program->groups, 'groupItems' => data('groups'), 'userLabel' => $lang->program->users)); + ->items(data('parentProgram') ? $lang->program->subAclList : $lang->program->aclList) + ->value('open'); diff --git a/module/program/ui/edit.field.php b/module/program/ui/edit.field.php index 0a2c1118f5..d072d78e69 100644 --- a/module/program/ui/edit.field.php +++ b/module/program/ui/edit.field.php @@ -13,4 +13,8 @@ $fields->field('begin') ->itemBegin('end')->require()->type('datePicker')->value(data('program.end'))->placeholder($lang->project->end)->itemEnd(); $fields->field('acl') - ->control(array('control' => 'aclBox', 'aclItems' => data('program.parent') ? $lang->program->subAclList : $lang->program->aclList, 'aclValue' => data('program.acl'), 'whitelistLabel' => $lang->program->whitelist, 'groupLabel' => $lang->program->groups, 'groupItems' => data('groups'), 'groupValue' => data('program.groups'), 'userLabel' => $lang->program->users, 'userValue' => data('program.whitelist'))); + ->items(data('program.parent') ? $lang->program->subAclList : $lang->program->aclList) + ->value(data('program.acl')); + +$fields->field('whitelist') + ->hidden(data('program.acl') == 'open'); diff --git a/module/program/zen.php b/module/program/zen.php index eaaa94155a..a7461bea69 100644 --- a/module/program/zen.php +++ b/module/program/zen.php @@ -51,9 +51,8 @@ class programZen extends program ->setDefault('openedDate', helper::now()) ->setDefault('code', '') ->setIF($this->post->acl == 'open', 'whitelist', '') - ->setIF($this->post->acl == 'open', 'groups', '') ->add('type', 'program') - ->join('whitelist,groups', ',') + ->join('whitelist', ',') ->get(); return $this->loadModel('file')->processImgURL($program, $editorFields, $this->post->uid); @@ -88,8 +87,7 @@ class programZen extends program ->setIF($this->post->realBegan != '' and $oldProgram->status == 'wait', 'status', 'doing') ->setIF(!isset($_POST['budgetUnit']), 'budgetUnit', $oldProgram->budgetUnit) ->setIF($this->post->acl == 'open', 'whitelist', '') - ->setIF($this->post->acl == 'open', 'groups', '') - ->join('whitelist,groups', ',') + ->join('whitelist', ',') ->get(); return $this->loadModel('file')->processImgURL($program, $editorFields, $this->post->uid);