diff --git a/module/block/config.php b/module/block/config.php index 56f6fe5c09..acd44f32ba 100644 --- a/module/block/config.php +++ b/module/block/config.php @@ -31,5 +31,9 @@ $config->block->shortBlock['program']['cmmiestimate'] = 'cmmiestimate'; $config->block->shortBlock['program']['cmmiprogress'] = 'cmmiprogress'; $config->block->shortBlock['']['contribute'] = 'contribute'; +$config->block->showAction['overview'] = array('block' => 'qa', 'module' => 'testcase', 'method' => 'create', 'vars' => ''); +$config->block->showAction['scrumlist'] = array('block' => 'program', 'module' => 'project', 'method' => 'create', 'vars' => ''); +$config->block->showAction['scrumproduct'] = array('block' => 'program', 'module' => 'product', 'method' => 'create', 'vars' => ''); + $config->statistic = new stdclass(); $config->statistic->storyStages = array('wait', 'planned', 'developing', 'testing', 'released'); diff --git a/module/block/control.php b/module/block/control.php index 0451121b72..218c55adca 100644 --- a/module/block/control.php +++ b/module/block/control.php @@ -247,13 +247,15 @@ class block extends control $block->moreLink = $this->createLink('company', 'dynamic'); } + $block->actionLink = ''; - if($block->block == 'overview') + if(isset($this->config->block->showAction[$block->block])) { - if($module == 'qa' && common::hasPriv('testcase', 'create')) + $action = $this->config->block->showAction[$block->block]; + if(common::hasPriv($action['module'], $action['method'])) { - $this->app->loadLang('testcase'); - $block->actionLink = html::a($this->createLink('testcase', 'create', 'productID='), " " . $this->lang->testcase->create, '', "class='btn btn-primary'"); + $this->app->loadLang($action['module']); + $block->actionLink = html::a($this->createLink($action['module'], $action['method'], $action['vars']), " " . $this->lang->$action['module']->create, '', "class='btn btn-mini'"); } } @@ -1567,19 +1569,19 @@ class block extends control } /** - * Print srcum progress block. + * Print srcum project list block. * * @access public * @return void */ - public function printScrumprogressBlock() + public function printScrumlistBlock() { $this->app->loadClass('pager', $static = true); if(!empty($this->params->type) and preg_match('/[^a-zA-Z0-9_]/', $this->params->type)) die(); $num = isset($this->params->num) ? (int)$this->params->num : 0; $type = isset($this->params->type) ? $this->params->type : 'all'; $pager = pager::init(0, $num, 1); - $this->view->projectStats = $this->loadModel('project')->getProjectStats($type, $productID = 0, $branch = 0, $itemCounts = 30, $orderBy = 'order_desc', $this->viewType != 'json' ? $pager : ''); + $this->view->projectStats = $this->loadModel('project')->getProjectStats($type, $productID = 0, $branch = 0, $itemCounts = 30, $orderBy = 'order_desc', $this->viewType != 'json' ? $pager : '', $this->session->program); } /** diff --git a/module/block/lang/zh-cn.php b/module/block/lang/zh-cn.php index 7d990cba80..60bac9ec88 100644 --- a/module/block/lang/zh-cn.php +++ b/module/block/lang/zh-cn.php @@ -127,8 +127,8 @@ $lang->block->default['scrum']['program']['1']['title'] = '项目整体情况'; $lang->block->default['scrum']['program']['1']['block'] = 'scrumoverall'; $lang->block->default['scrum']['program']['1']['grid'] = 8; -$lang->block->default['scrum']['program']['2']['title'] = '进行中的' . $lang->projectCommon; -$lang->block->default['scrum']['program']['2']['block'] = 'scrumprogress'; +$lang->block->default['scrum']['program']['2']['title'] = $lang->projectCommon . '列表'; +$lang->block->default['scrum']['program']['2']['block'] = 'scrumlist'; $lang->block->default['scrum']['program']['2']['grid'] = 8; $lang->block->default['scrum']['program']['3']['title'] = $lang->productCommon . '路线图'; @@ -328,11 +328,11 @@ $lang->block->modules['program']->availableBlocks->statistic = '项目统计 $lang->block->modules['scrum']['index'] = new stdclass(); $lang->block->modules['scrum']['index']->availableBlocks = new stdclass(); $lang->block->modules['scrum']['index']->availableBlocks->scrumoverall = '项目整体情况'; -$lang->block->modules['scrum']['index']->availableBlocks->scrumprogress = '进行中的' . $lang->projectCommon; -$lang->block->modules['scrum']['index']->availableBlocks->scrumproject = $lang->projectCommon . '总览'; -$lang->block->modules['scrum']['index']->availableBlocks->scrumproduct = $lang->productCommon . '总览'; +$lang->block->modules['scrum']['index']->availableBlocks->scrumlist = $lang->projectCommon . '列表'; +$lang->block->modules['scrum']['index']->availableBlocks->scrumproject = $lang->projectCommon . '总览'; +$lang->block->modules['scrum']['index']->availableBlocks->scrumproduct = $lang->productCommon . '总览'; $lang->block->modules['scrum']['index']->availableBlocks->scrumtest = '待测版本'; -$lang->block->modules['scrum']['index']->availableBlocks->scrumroadmap = $lang->productCommon . '路线图'; +$lang->block->modules['scrum']['index']->availableBlocks->scrumroadmap = $lang->productCommon . '路线图'; $lang->block->modules['cmmi']['index'] = new stdclass(); $lang->block->modules['cmmi']['index']->availableBlocks = new stdclass(); @@ -455,6 +455,11 @@ $lang->block->typeList->project['doing'] = '进行中'; $lang->block->typeList->project['all'] = '全部'; $lang->block->typeList->project['involved'] = '我参与的'; +$lang->block->typeList->scrum['undone'] = '未完成'; +$lang->block->typeList->scrum['doing'] = '进行中'; +$lang->block->typeList->scrum['all'] = '全部'; +$lang->block->typeList->scrum['involved'] = '我参与的'; + $lang->block->typeList->testtask['wait'] = '待测版本'; $lang->block->typeList->testtask['doing'] = '测试中版本'; $lang->block->typeList->testtask['blocked'] = '阻塞版本'; @@ -469,6 +474,12 @@ $lang->block->modules['program']->moreLinkList->cmmireport = 'weekly|index|'; $lang->block->modules['program']->moreLinkList->cmmiestimate = 'workestimation|index|'; $lang->block->modules['program']->moreLinkList->cmmiissue = 'issue|browse|'; $lang->block->modules['program']->moreLinkList->cmmirisk = 'risk|browse|'; +$lang->block->modules['program']->moreLinkList->scrumList = 'project|all|'; +$lang->block->modules['program']->moreLinkList->scrumroadmap = 'product|all|'; +$lang->block->modules['program']->moreLinkList->scrumtest = 'testtask|browse|'; +$lang->block->modules['program']->moreLinkList->scrumproduct = 'product|all|'; +$lang->block->modules['program']->moreLinkList->scrumproject = 'project|all|'; +$lang->block->modules['program']->moreLinkList->scrumdynamic = 'company|dynamic|'; $lang->block->modules['product']->moreLinkList = new stdclass(); $lang->block->modules['product']->moreLinkList->list = 'product|all|product=&line=0&status=%s'; diff --git a/module/block/model.php b/module/block/model.php index 9671ba0e0b..726fa276af 100644 --- a/module/block/model.php +++ b/module/block/model.php @@ -847,11 +847,11 @@ class blockModel extends model /** * Get testtask params. *▫ - * @param string $module▫ + * @param string $module * @access public * @return void */ - public function getScrumtestParams($module = '') + public function getScrumtestParams($module = '') { $params = new stdclass(); $params->type['name'] = $this->lang->block->type; @@ -865,4 +865,24 @@ class blockModel extends model return json_encode($params); } + /** + * Get scrum project list params. + *▫ + * @param string $module + * @access public + * @return void + */ + public function getScrumListParams($module = '') + { + $params = new stdclass(); + $params->type['name'] = $this->lang->block->type; + $params->type['options'] = $this->lang->block->typeList->scrum; + $params->type['control'] = 'select'; + + $params->num['name'] = $this->lang->block->num; + $params->num['default'] = 20; + $params->num['control'] = 'input'; + + return json_encode($params); + } } diff --git a/module/block/view/scrumprogressblock.html.php b/module/block/view/scrumlistblock.html.php similarity index 94% rename from module/block/view/scrumprogressblock.html.php rename to module/block/view/scrumlistblock.html.php index 639a763302..15da1f159d 100644 --- a/module/block/view/scrumprogressblock.html.php +++ b/module/block/view/scrumlistblock.html.php @@ -11,7 +11,7 @@ */ ?> -
" . $lang->project->create, '', "class='btn btn-primary' data-toggle='modal' data-type='ajax'")?>
+
" . $lang->project->create, '', "class='btn btn-primary'")?>
diff --git a/module/block/view/scrumproductblock.html.php b/module/block/view/scrumproductblock.html.php index 7f5ca07b58..f563a228a2 100644 --- a/module/block/view/scrumproductblock.html.php +++ b/module/block/view/scrumproductblock.html.php @@ -11,7 +11,7 @@ */ ?> -
" . $lang->project->create, '', "class='btn btn-primary' data-toggle='modal' data-type='ajax'")?>
+
" . $lang->product->create, '', "class='btn btn-primary'")?>
@@ -31,7 +31,7 @@ $viewLink = $this->createLink('product', 'browse', 'productID=' . $id); ?> > - + diff --git a/module/block/view/scrumtestblock.html.php b/module/block/view/scrumtestblock.html.php index 5cb099cef5..6b86a25809 100644 --- a/module/block/view/scrumtestblock.html.php +++ b/module/block/view/scrumtestblock.html.php @@ -35,14 +35,14 @@ $viewLink = $this->createLink('testtask', 'view', "testtaskID={$testtask->id}"); ?> > - + - + - + - +
name?>name?> productName?>productName?> projectName?>projectName?> buildName?>buildName?> testtask->statusList, $testtask->status)?>