diff --git a/module/branch/control.php b/module/branch/control.php index c6c408e7a8..ab315b59f7 100644 --- a/module/branch/control.php +++ b/module/branch/control.php @@ -20,9 +20,13 @@ class branch extends control */ public function manage($productID) { - $this->lang->product->menu = $this->lang->product->viewMenu; + $this->lang->product->menu = $this->lang->product->setMenu; $this->lang->product->switcherMenu = $this->loadModel('product')->getSwitcher($productID); + $moduleIndex = array_search('branch', $this->lang->noMenuModule); + if($moduleIndex !== false) unset($this->lang->noMenuModule[$moduleIndex]); + $this->lang->branch->menu = $this->lang->product->setMenu; + if($_POST) { $this->branch->manage($productID); diff --git a/module/common/lang/de.php b/module/common/lang/de.php index 673cb6def5..816ba4e2a3 100644 --- a/module/common/lang/de.php +++ b/module/common/lang/de.php @@ -176,12 +176,12 @@ $lang->product->viewMenu->roadmap = 'Roadmap|product|roadmap|productID=%s'; $lang->product->viewMenu->dynamic = 'Dynamic|product|dynamic|productID=%s'; $lang->product->viewMenu->project = "Project|product|project|status=all&productID=%s"; $lang->product->viewMenu->doc = array('link' => 'Doc|doc|objectLibs|type=product&objectID=%s&from=product', 'subModule' => 'doc'); -$lang->product->viewMenu->set = array('link' => 'Setting|product|set|mode=module&productID=%s&view=story', 'alias' => 'addwhitelist'); +$lang->product->viewMenu->set = array('link' => 'Setting|tree|browse|productID=%s&view=story', 'subModule' => 'product', 'alias' => 'addwhitelist'); $lang->product->setMenu = new stdclass(); -$lang->product->setMenu->branch = array('link' => '@branch@|product|set|mode=branch&productID={PRODUCT}', 'subModule' => 'branch'); -$lang->product->setMenu->module = array('link' => 'Module|product|set|mode=module&productID={PRODUCT}&view=story', 'subModule' => 'tree'); -$lang->product->setMenu->whitelist = array('link' => 'Whitelist|product|set|mode=whitelist&productID={PRODUCT}', 'subModule' => 'personnel'); +$lang->product->setMenu->module = array('link' => 'Module|tree|browse|product={PRODUCT}&view=story', 'subModule' => 'tree'); +$lang->product->setMenu->branch = array('link' => '@branch@|branch|manage|product={PRODUCT}', 'subModule' => 'branch'); +$lang->product->setMenu->whitelist = array('link' => 'Whitelist|product|whitelist|product={PRODUCT}', 'subModule' => 'personnel'); $lang->release = new stdclass(); $lang->branch = new stdclass(); @@ -600,6 +600,7 @@ $lang->navGroup->effort = 'my'; $lang->navGroup->personnel = 'program'; +$lang->navGroup->product = 'product'; $lang->navGroup->productplan = 'product'; $lang->navGroup->release = 'product'; $lang->navGroup->branch = 'product'; diff --git a/module/common/lang/en.php b/module/common/lang/en.php index fafa0542ec..459263d97c 100644 --- a/module/common/lang/en.php +++ b/module/common/lang/en.php @@ -176,12 +176,12 @@ $lang->product->viewMenu->roadmap = 'Roadmap|product|roadmap|productID=%s'; $lang->product->viewMenu->dynamic = 'Dynamic|product|dynamic|productID=%s'; $lang->product->viewMenu->project = "Project|product|project|status=all&productID=%s"; $lang->product->viewMenu->doc = array('link' => 'Doc|doc|objectLibs|type=product&objectID=%s&from=product', 'subModule' => 'doc'); -$lang->product->viewMenu->set = array('link' => 'Setting|product|set|mode=module&productID=%s&view=story', 'alias' => 'addwhitelist'); +$lang->product->viewMenu->set = array('link' => 'Setting|tree|browse|productID=%s&view=story', 'subModule' => 'product', 'alias' => 'addwhitelist'); $lang->product->setMenu = new stdclass(); -$lang->product->setMenu->branch = array('link' => '@branch@|product|set|mode=branch&productID={PRODUCT}', 'subModule' => 'branch'); -$lang->product->setMenu->module = array('link' => 'Module|product|set|mode=module&productID={PRODUCT}&view=story', 'subModule' => 'tree'); -$lang->product->setMenu->whitelist = array('link' => 'Whitelist|product|set|mode=whitelist&productID={PRODUCT}', 'subModule' => 'personnel'); +$lang->product->setMenu->module = array('link' => 'Module|tree|browse|product={PRODUCT}&view=story', 'subModule' => 'tree'); +$lang->product->setMenu->branch = array('link' => '@branch@|branch|manage|product={PRODUCT}', 'subModule' => 'branch'); +$lang->product->setMenu->whitelist = array('link' => 'Whitelist|product|whitelist|product={PRODUCT}', 'subModule' => 'personnel'); $lang->release = new stdclass(); $lang->branch = new stdclass(); @@ -600,6 +600,7 @@ $lang->navGroup->effort = 'my'; $lang->navGroup->personnel = 'program'; +$lang->navGroup->product = 'product'; $lang->navGroup->productplan = 'product'; $lang->navGroup->release = 'product'; $lang->navGroup->branch = 'product'; diff --git a/module/common/lang/fr.php b/module/common/lang/fr.php index 4aa5471599..b2f438c462 100644 --- a/module/common/lang/fr.php +++ b/module/common/lang/fr.php @@ -176,12 +176,12 @@ $lang->product->viewMenu->roadmap = 'Roadmap|product|roadmap|productID=%s'; $lang->product->viewMenu->dynamic = 'Dynamic|product|dynamic|productID=%s'; $lang->product->viewMenu->project = "Project|product|project|status=all&productID=%s"; $lang->product->viewMenu->doc = array('link' => 'Doc|doc|objectLibs|type=product&objectID=%s&from=product', 'subModule' => 'doc'); -$lang->product->viewMenu->set = array('link' => 'Setting|product|set|mode=module&productID=%s&view=story', 'alias' => 'addwhitelist'); +$lang->product->viewMenu->set = array('link' => 'Setting|tree|browse|productID=%s&view=story', 'subModule' => 'product', 'alias' => 'addwhitelist'); $lang->product->setMenu = new stdclass(); -$lang->product->setMenu->branch = array('link' => '@branch@|product|set|mode=branch&productID={PRODUCT}', 'subModule' => 'branch'); -$lang->product->setMenu->module = array('link' => 'Module|product|set|mode=module&productID={PRODUCT}&view=story', 'subModule' => 'tree'); -$lang->product->setMenu->whitelist = array('link' => 'Whitelist|product|set|mode=whitelist&productID={PRODUCT}', 'subModule' => 'personnel'); +$lang->product->setMenu->module = array('link' => 'Module|tree|browse|product={PRODUCT}&view=story', 'subModule' => 'tree'); +$lang->product->setMenu->branch = array('link' => '@branch@|branch|manage|product={PRODUCT}', 'subModule' => 'branch'); +$lang->product->setMenu->whitelist = array('link' => 'Whitelist|product|whitelist|product={PRODUCT}', 'subModule' => 'personnel'); $lang->release = new stdclass(); $lang->branch = new stdclass(); @@ -600,6 +600,7 @@ $lang->navGroup->effort = 'my'; $lang->navGroup->personnel = 'program'; +$lang->navGroup->product = 'product'; $lang->navGroup->productplan = 'product'; $lang->navGroup->release = 'product'; $lang->navGroup->branch = 'product'; diff --git a/module/common/lang/vi.php b/module/common/lang/vi.php index b82acd99d2..2ac9f48f0a 100644 --- a/module/common/lang/vi.php +++ b/module/common/lang/vi.php @@ -176,12 +176,12 @@ $lang->product->viewMenu->roadmap = 'Roadmap|product|roadmap|productID=%s'; $lang->product->viewMenu->dynamic = 'Dynamic|product|dynamic|productID=%s'; $lang->product->viewMenu->project = "Project|product|project|status=all&productID=%s"; $lang->product->viewMenu->doc = array('link' => 'Doc|doc|objectLibs|type=product&objectID=%s&from=product', 'subModule' => 'doc'); -$lang->product->viewMenu->set = array('link' => 'Setting|product|set|mode=module&productID=%s&view=story', 'alias' => 'addwhitelist'); +$lang->product->viewMenu->set = array('link' => 'Setting|tree|browse|productID=%s&view=story', 'subModule' => 'product', 'alias' => 'addwhitelist'); $lang->product->setMenu = new stdclass(); -$lang->product->setMenu->branch = array('link' => '@branch@|product|set|mode=branch&productID={PRODUCT}', 'subModule' => 'branch'); -$lang->product->setMenu->module = array('link' => 'Module|product|set|mode=module&productID={PRODUCT}&view=story', 'subModule' => 'tree'); -$lang->product->setMenu->whitelist = array('link' => 'Whitelist|product|set|mode=whitelist&productID={PRODUCT}', 'subModule' => 'personnel'); +$lang->product->setMenu->module = array('link' => 'Module|tree|browse|product={PRODUCT}&view=story', 'subModule' => 'tree'); +$lang->product->setMenu->branch = array('link' => '@branch@|branch|manage|product={PRODUCT}', 'subModule' => 'branch'); +$lang->product->setMenu->whitelist = array('link' => 'Whitelist|product|whitelist|product={PRODUCT}', 'subModule' => 'personnel'); $lang->release = new stdclass(); $lang->branch = new stdclass(); @@ -600,6 +600,7 @@ $lang->navGroup->effort = 'my'; $lang->navGroup->personnel = 'program'; +$lang->navGroup->product = 'product'; $lang->navGroup->productplan = 'product'; $lang->navGroup->release = 'product'; $lang->navGroup->branch = 'product'; diff --git a/module/common/lang/zh-cn.php b/module/common/lang/zh-cn.php index 98b06012ce..397af0aa2b 100755 --- a/module/common/lang/zh-cn.php +++ b/module/common/lang/zh-cn.php @@ -176,12 +176,12 @@ $lang->product->viewMenu->roadmap = '路线图|product|roadmap|productID=%s' $lang->product->viewMenu->dynamic = '动态|product|dynamic|productID=%s'; $lang->product->viewMenu->project = "项目|product|project|status=all&productID=%s"; $lang->product->viewMenu->doc = array('link' => '文档|doc|objectLibs|type=product&objectID=%s&from=product', 'subModule' => 'doc'); -$lang->product->viewMenu->set = array('link' => '设置|product|set|mode=module&productID=%s&view=story', 'alias' => 'addwhitelist'); +$lang->product->viewMenu->set = array('link' => '设置|tree|browse|productID=%s&view=story', 'subModule' => 'product', 'alias' => 'addwhitelist'); $lang->product->setMenu = new stdclass(); -$lang->product->setMenu->branch = array('link' => '@branch@|product|set|mode=branch&productID={PRODUCT}', 'subModule' => 'branch'); -$lang->product->setMenu->module = array('link' => '模块|product|set|mode=module&productID={PRODUCT}&view=story', 'subModule' => 'tree'); -$lang->product->setMenu->whitelist = array('link' => '白名单|product|set|mode=whitelist&productID={PRODUCT}', 'subModule' => 'personnel'); +$lang->product->setMenu->module = array('link' => '模块|tree|browse|product={PRODUCT}&view=story', 'subModule' => 'tree'); +$lang->product->setMenu->branch = array('link' => '@branch@|branch|manage|product={PRODUCT}', 'subModule' => 'branch'); +$lang->product->setMenu->whitelist = array('link' => '白名单|product|whitelist|product={PRODUCT}', 'subModule' => 'personnel'); $lang->release = new stdclass(); $lang->branch = new stdclass(); @@ -600,6 +600,7 @@ $lang->navGroup->effort = 'my'; $lang->navGroup->personnel = 'program'; +$lang->navGroup->product = 'product'; $lang->navGroup->productplan = 'product'; $lang->navGroup->release = 'product'; $lang->navGroup->branch = 'product'; diff --git a/module/common/lang/zh-tw.php b/module/common/lang/zh-tw.php index 737467d508..3c98637eb6 100644 --- a/module/common/lang/zh-tw.php +++ b/module/common/lang/zh-tw.php @@ -172,12 +172,12 @@ $lang->product->viewMenu->roadmap = '路線圖|product|roadmap|productID=%s' $lang->product->viewMenu->dynamic = '動態|product|dynamic|productID=%s'; $lang->product->viewMenu->project = "項目|product|project|status=all&productID=%s"; $lang->product->viewMenu->doc = array('link' => '文檔|doc|objectLibs|type=product&objectID=%s&from=product', 'subModule' => 'doc'); -$lang->product->viewMenu->set = array('link' => '設置|product|set|mode=module&productID=%s&view=story', 'alias' => 'addwhitelist'); +$lang->product->viewMenu->set = array('link' => '設置|tree|browse|productID=%s&view=story', 'subModule' => 'product', 'alias' => 'addwhitelist'); $lang->product->setMenu = new stdclass(); -$lang->product->setMenu->branch = array('link' => '@branch@|product|set|mode=branch&productID={PRODUCT}', 'subModule' => 'branch'); -$lang->product->setMenu->module = array('link' => '模組|product|set|mode=module&productID={PRODUCT}&view=story', 'subModule' => 'tree'); -$lang->product->setMenu->whitelist = array('link' => '白名單|product|set|mode=whitelist&productID={PRODUCT}', 'subModule' => 'personnel'); +$lang->product->setMenu->module = array('link' => '模組|tree|browse|product={PRODUCT}&view=story', 'subModule' => 'tree'); +$lang->product->setMenu->branch = array('link' => '@branch@|branch|manage|product={PRODUCT}', 'subModule' => 'branch'); +$lang->product->setMenu->whitelist = array('link' => '白名單|product|whitelist|product={PRODUCT}', 'subModule' => 'personnel'); $lang->release = new stdclass(); $lang->branch = new stdclass(); @@ -583,6 +583,7 @@ $lang->navGroup->effort = 'my'; $lang->navGroup->personnel = 'program'; +$lang->navGroup->product = 'product'; $lang->navGroup->productplan = 'product'; $lang->navGroup->release = 'product'; $lang->navGroup->branch = 'product'; diff --git a/module/common/model.php b/module/common/model.php index b619de10a7..39100d3474 100644 --- a/module/common/model.php +++ b/module/common/model.php @@ -803,7 +803,7 @@ class commonModel extends model if($group == 'repo' || $group == 'ops' || $group == 'feedback') return; if($group == 'my') self::getMyModuleMenu($moduleName, $methodName); if($group == 'project') self::getProgramModuleMenu($moduleName); - if($moduleName == 'product' and ($methodName == 'set' or $methodName == 'addwhitelist')) + if($group == 'product') { $lang->product->menu = $lang->product->setMenu; self::processMenuVars($lang->product->menu); diff --git a/module/personnel/control.php b/module/personnel/control.php index f24fad36bb..c6d89d40a7 100644 --- a/module/personnel/control.php +++ b/module/personnel/control.php @@ -98,6 +98,12 @@ class personnel extends control { if($module == 'personnel') $this->setProgramNavMenu($objectID); + if($module == 'product') + { + $moduleIndex = array_search('product', $this->lang->noMenuModule); + if($moduleIndex !== false) unset($this->lang->noMenuModule[$moduleIndex]); + } + /* Load lang and set session. */ $this->app->loadLang('user'); $this->app->session->set('whitelistBrowse', $this->app->getURI(true)); diff --git a/module/product/control.php b/module/product/control.php index c1ff237af6..bc9b9e5b96 100644 --- a/module/product/control.php +++ b/module/product/control.php @@ -668,24 +668,6 @@ class product extends control $this->display(); } - /** - * Setting of branch, module and whitelist. - * - * @param string $mode - * @param int $productID - * @access public - * @return void - */ - public function set($mode = 'branch', $productID) - { - $moduleIndex = array_search('product', $this->lang->noMenuModule); - if($moduleIndex !== false) unset($this->lang->noMenuModule[$moduleIndex]); - - if($mode == 'branch') echo $this->fetch('branch', 'manage', "productID=$productID"); - if($mode == 'module') echo $this->fetch('tree', 'browse', "productID=$productID&view=story"); - if($mode == 'whitelist') echo $this->fetch('product', 'whitelist', "productID=$productID"); - } - /** * AJAX: get projects of a product in html select. * diff --git a/module/tree/control.php b/module/tree/control.php index 603230293c..3bacb6b436 100644 --- a/module/tree/control.php +++ b/module/tree/control.php @@ -26,6 +26,7 @@ class tree extends control { $this->loadModel('product'); + /* According to the type, set the module root and modules. */ if(strpos('story|bug|case', $viewType) !== false) { @@ -65,15 +66,15 @@ class tree extends control if($viewType == 'story') { /* Set menu.*/ - $this->lang->product->menu = $this->lang->product->viewMenu; - $this->lang->noMenuModule[] = 'tree'; + $moduleIndex = array_search('tree', $this->lang->noMenuModule); + if($moduleIndex !== false) unset($this->lang->noMenuModule[$moduleIndex]); $this->lang->product->switcherMenu = $this->loadModel('product')->getSwitcher($rootID, 'story'); $products = $this->product->getPairs(); + $this->product->saveState($rootID, $products); $this->product->setMenu($products, $rootID, $branch, 'story', '', 'story'); - $this->lang->tree->menu = $this->lang->product->menu; - $this->lang->tree->menuOrder = $this->lang->product->menuOrder; + $this->lang->tree->menu = $this->lang->product->setMenu; unset($products[$rootID]); $currentProduct = key($products);