From 6c26ebb27f8bd35d497e7927f8b833ea40ff1f02 Mon Sep 17 00:00:00 2001 From: chenfeiCF Date: Mon, 14 Mar 2016 08:55:38 +0800 Subject: [PATCH] * add method privilege for link or unlink story, bug, case. --- module/group/lang/resource.php | 6 +++ module/upgrade/model.php | 68 ++++++++++++++++++++++++++++++++++ 2 files changed, 74 insertions(+) diff --git a/module/group/lang/resource.php b/module/group/lang/resource.php index 7aa9981f78..bdf1b07f73 100644 --- a/module/group/lang/resource.php +++ b/module/group/lang/resource.php @@ -159,6 +159,8 @@ $lang->resource->story = new stdclass(); $lang->resource->story->create = 'create'; $lang->resource->story->batchCreate = 'batchCreate'; $lang->resource->story->edit = 'edit'; +$lang->resource->story->linkStory = 'linkStory'; +$lang->resource->story->unlinkStory = 'unlinkStory'; $lang->resource->story->batchEdit = 'batchEdit'; $lang->resource->story->export = 'export'; $lang->resource->story->delete = 'delete'; @@ -416,6 +418,8 @@ $lang->resource->bug->confirmBug = 'confirmBug'; $lang->resource->bug->batchConfirm = 'batchConfirm'; $lang->resource->bug->view = 'view'; $lang->resource->bug->edit = 'edit'; +$lang->resource->bug->linkBugs = 'linkBugs'; +$lang->resource->bug->unlinkBug = 'unlinkBug'; $lang->resource->bug->batchEdit = 'batchEdit'; $lang->resource->bug->batchClose = 'batchClose'; $lang->resource->bug->assignTo = 'assignTo'; @@ -464,6 +468,8 @@ $lang->resource->testcase->batchCreate = 'batchCreate'; $lang->resource->testcase->createBug = 'createBug'; $lang->resource->testcase->view = 'view'; $lang->resource->testcase->edit = 'edit'; +$lang->resource->testcase->linkCases = 'linkCases'; +$lang->resource->testcase->unlinkCase = 'unlinkCase'; $lang->resource->testcase->batchEdit = 'batchEdit'; $lang->resource->testcase->delete = 'delete'; $lang->resource->testcase->batchDelete = 'batchDelete'; diff --git a/module/upgrade/model.php b/module/upgrade/model.php index f8fa2e122f..c0d9ff5f5c 100644 --- a/module/upgrade/model.php +++ b/module/upgrade/model.php @@ -133,6 +133,7 @@ class upgradeModel extends model case '8_0': case '8_0_1': $this->execSQL($this->getUpgradeFile('8.0.1')); + $this->addPriv8_0_1(); default: if(!$this->isError()) $this->setting->updateVersion($this->config->version); } @@ -761,6 +762,73 @@ class upgradeModel extends model return true; } + /** + * Add priv for version 8.0.1 + * + * @access public + * @return bool + */ + public function addPriv8_0_1() + { + $privTable = $this->config->db->prefix . 'groupPriv'; + + $oldPriv = $this->dao->select('*')->from($privTable) + ->where('module')->eq('bug') + ->andWhere('method')->eq('edit') + ->fetchAll(); + foreach($oldPriv as $item) + { + $this->dao->insert($privTable) + ->set('module')->eq('bug') + ->set('method')->eq('linkBugs') + ->set('`group`')->eq($item->group) + ->exec(); + $this->dao->insert($privTable) + ->set('module')->eq('bug') + ->set('method')->eq('unlinkBug') + ->set('`group`')->eq($item->group) + ->exec(); + } + + $oldPriv = $this->dao->select('*')->from($privTable) + ->where('module')->eq('story') + ->andWhere('method')->eq('edit') + ->fetchAll(); + foreach($oldPriv as $item) + { + $this->dao->insert($privTable) + ->set('module')->eq('story') + ->set('method')->eq('linkStory') + ->set('`group`')->eq($item->group) + ->exec(); + $this->dao->insert($privTable) + ->set('module')->eq('story') + ->set('method')->eq('unlinkStory') + ->set('`group`')->eq($item->group) + ->exec(); + } + + $oldPriv = $this->dao->select('*')->from($privTable) + ->where('module')->eq('testcase') + ->andWhere('method')->eq('edit') + ->fetchAll(); + foreach($oldPriv as $item) + { + $this->dao->insert($privTable) + ->set('module')->eq('testcase') + ->set('method')->eq('linkCases') + ->set('`group`')->eq($item->group) + ->exec(); + $this->dao->insert($privTable) + ->set('module')->eq('testcase') + ->set('method')->eq('unlinkCase') + ->set('`group`')->eq($item->group) + ->exec(); + } + + return true; + } + /** * To lower table. *