diff --git a/framework/router.class.php b/framework/router.class.php index bdcc4a29dc..54a15be084 100755 --- a/framework/router.class.php +++ b/framework/router.class.php @@ -226,7 +226,7 @@ class router extends baseRouter /* User preference init. */ $config->URSR = $URSR; - $config->URAndSR = ($URAndSR and strpos(",{$config->disabledFeatures},", ',productURStory,') === false); + $config->URAndSR = ($URAndSR and strpos(",{$config->disabledFeatures},", ',productUR,') === false); $config->programLink = 'program-browse'; $config->productLink = 'product-all'; $config->projectLink = 'project-browse'; diff --git a/module/custom/config.php b/module/custom/config.php index d5c96c29b7..9998ce947e 100644 --- a/module/custom/config.php +++ b/module/custom/config.php @@ -22,7 +22,8 @@ $config->custom->requiredModules[35] = 'execution'; $config->custom->requiredModules[40] = 'task'; $config->custom->requiredModules[45] = 'build'; -$config->custom->features = array('waterfall', 'productURStory', 'scrumOpportunity', 'scrumMeeting', 'scrumAuditplan', 'scrumProcess', 'scrumIssue', 'scrumRisk', 'assetlib'); +$config->custom->allFeatures = array('program', 'productRR', 'productUR', 'productLine', 'projectScrum', 'projectWaterfall', 'projectKanban', 'execution', 'vision'); +$config->custom->features = array('waterfall', 'productUR'); $config->custom->requiredModules[50] = 'bug'; $config->custom->requiredModules[55] = 'testcase'; diff --git a/module/custom/control.php b/module/custom/control.php index d0b81f7f15..538d468966 100644 --- a/module/custom/control.php +++ b/module/custom/control.php @@ -644,14 +644,48 @@ class custom extends control return $this->send(array('result' => 'success', 'message' => $this->lang->saveSuccess, 'locate' => 'top')); } + $disabledFeatures = array('program', 'productLine'); + foreach($this->config->custom->features as $feature) + { + $function = 'has' . ucfirst($feature) . 'Data'; + if(!$this->custom->$function()) + { + if(strpos($feature, 'scrum') !== false) + { + $disabledFeatures['scrum'][] = $feature; + } + else + { + $disabledFeatures[] = $feature; + } + } + } + + $enabledScrumFeatures = array(); + $disabledScrumFeatures = array(); + foreach($this->config->custom->scrumFeatures as $scrumFeature) + { + if(in_array('scrum' . ucfirst($scrumFeature), $disabledFeatures['scrum'])) + { + $disabledScrumFeatures[] = $this->lang->custom->scrum->features[$scrumFeature]; + } + else + { + $enabledScrumFeatures[] = $this->lang->custom->scrum->features[$scrumFeature]; + } + } + $this->app->loadLang('upgrade'); - $this->view->title = $this->lang->custom->mode; - $this->view->position[] = $this->lang->custom->common; - $this->view->position[] = $this->view->title; - $this->view->mode = $mode; - $this->view->programs = $this->loadModel('program')->getTopPairs('', 'noclosed', true); - $this->view->programID = isset($this->config->global->defaultProgram) ? $this->config->global->defaultProgram : 0; + $this->view->title = $this->lang->custom->mode; + $this->view->position[] = $this->lang->custom->common; + $this->view->position[] = $this->view->title; + $this->view->mode = $mode; + $this->view->programs = $this->loadModel('program')->getTopPairs('', 'noclosed', true); + $this->view->programID = isset($this->config->global->defaultProgram) ? $this->config->global->defaultProgram : 0; + $this->view->disabledFeatures = $disabledFeatures; + $this->view->enabledScrumFeatures = implode($this->lang->comma, $enabledScrumFeatures); + $this->view->disabledScrumFeatures = implode($this->lang->comma, $disabledScrumFeatures); $this->display(); } diff --git a/module/custom/model.php b/module/custom/model.php index b0836a4f45..24bbf2dbf3 100644 --- a/module/custom/model.php +++ b/module/custom/model.php @@ -916,7 +916,7 @@ class customModel extends model * @access public * @return int */ - public function hasProductURStoryData() + public function hasProductURData() { return $this->dao->select('*')->from(TABLE_STORY)->where('type')->eq('requirement')->andWhere('deleted')->eq('0')->count(); } diff --git a/module/custom/view/flow.html.php b/module/custom/view/flow.html.php index 7ec10eb36a..9c460ba9ed 100644 --- a/module/custom/view/flow.html.php +++ b/module/custom/view/flow.html.php @@ -33,7 +33,7 @@