diff --git a/db/zentao.sql b/db/zentao.sql index 6eb3859a93..53c647fce5 100644 --- a/db/zentao.sql +++ b/db/zentao.sql @@ -1721,6 +1721,10 @@ INSERT INTO `zt_grouppriv` (`group`, `module`, `method`) VALUES (1, 'projectrelease', 'unlinkStory'), (1, 'projectrelease', 'view'), (1, 'projectrelease', 'changeStatus'), +(1, 'projectstory', 'requirement'), +(1, 'projectstory', 'story'), +(1, 'projectstory', 'track'), +(1, 'projectbuild', 'browse'), (1, 'qa', 'index'), (1, 'release', 'batchUnlinkBug'), (1, 'release', 'batchUnlinkStory'), diff --git a/framework/router.class.php b/framework/router.class.php index ef53f43b6e..4cd961ccd0 100755 --- a/framework/router.class.php +++ b/framework/router.class.php @@ -163,49 +163,51 @@ class router extends baseRouter if($this->session->PRJ) $model = $this->dbh->query('SELECT model FROM' . TABLE_PROJECT . "WHERE id = {$this->session->PRJ}")->fetch(); if(isset($model->model) && $model->model == 'waterfall') - { - $projectIndex = 2; + { $projectIndex = 2; } - $config->URAndSR = $URAndSR; - $config->URSRName = $URSRName; - /* Set productCommon, projectCommon, hourCommon and planCommon. Default english lang. */ $lang->productCommon = isset($this->config->productCommonList[$this->clientLang][(int)$productIndex]) ? $this->config->productCommonList[$this->clientLang][(int)$productIndex] : $this->config->productCommonList['en'][(int)$productIndex]; $lang->projectCommon = isset($this->config->projectCommonList[$this->clientLang][(int)$projectIndex]) ? $this->config->projectCommonList[$this->clientLang][(int)$projectIndex] : $this->config->projectCommonList['en'][(int)$$projectIndex]; $lang->hourCommon = isset($this->config->hourPointCommonList[$this->clientLang][(int)$hourIndex]) ? $this->config->hourPointCommonList[$this->clientLang][(int)$hourIndex] : $this->config->hourPointCommonList['en'][(int)$hourIndex]; $lang->planCommon = isset($this->config->planCommonList[$this->clientLang][(int)$planIndex]) ? $this->config->planCommonList[$this->clientLang][(int)$planIndex] : $this->config->planCommonList['en'][(int)$planIndex]; - /* Get story concept in project and product. */ - $URLists = $this->dbh->query('SELECT `key`, `value` FROM' . TABLE_LANG . "WHERE module = 'custom' and section = 'URList' and lang = \"{$this->clientLang}\"")->fetchAll(); - $SRLists = $this->dbh->query('SELECT `key`, `value` FROM' . TABLE_LANG . "WHERE module = 'custom' and section = 'SRList' and lang = \"{$this->clientLang}\"")->fetchAll(); + $config->URAndSR = $URAndSR; + $config->URSRName = $URSRName; - $URList = array(); - $SRList = array(); - foreach($URLists as $pair) $URList[$pair->key] = $pair->value; - foreach($SRLists as $pair) $SRList[$pair->key] = $pair->value; + if($this->dbh and !empty($this->config->db->name) and !defined('IN_UPGRADE')) + { + /* Get story concept in project and product. */ + $URLists = $this->dbh->query('SELECT `key`, `value` FROM' . TABLE_LANG . "WHERE module = 'custom' and section = 'URList' and lang = \"{$this->clientLang}\"")->fetchAll(); + $SRLists = $this->dbh->query('SELECT `key`, `value` FROM' . TABLE_LANG . "WHERE module = 'custom' and section = 'SRList' and lang = \"{$this->clientLang}\"")->fetchAll(); - $lang->URCommon = zget($URList, $config->URSRName, $config->URCommonList[$this->clientLang]); - $lang->SRCommon = zget($SRList, $config->URSRName, $config->SRCommonList[$this->clientLang]); - $lang->projectURCommon = $config->URCommonList[$this->clientLang]; - $lang->productURCommon = $config->URCommonList[$this->clientLang]; - $lang->projectSRCommon = $config->SRCommonList[$this->clientLang]; - $lang->productSRCommon = $config->SRCommonList[$this->clientLang]; + $URList = array(); + $SRList = array(); + foreach($URLists as $pair) $URList[$pair->key] = $pair->value; + foreach($SRLists as $pair) $SRList[$pair->key] = $pair->value; - $projectID = $this->session->PRJ; - if($projectID) - { - $storyConcept = $this->dbh->query('SELECT `storyConcept` FROM' . TABLE_PROJECT . "WHERE id = {$projectID}")->fetch(); - $lang->projectURCommon = zget($URList, $storyConcept->storyConcept, $config->URCommonList[$this->clientLang]); - $lang->projectSRCommon = zget($SRList, $storyConcept->storyConcept, $config->SRCommonList[$this->clientLang]); - } + $lang->URCommon = zget($URList, $config->URSRName, $config->URCommonList[$this->clientLang]); + $lang->SRCommon = zget($SRList, $config->URSRName, $config->SRCommonList[$this->clientLang]); + $lang->projectURCommon = $config->URCommonList[$this->clientLang]; + $lang->productURCommon = $config->URCommonList[$this->clientLang]; + $lang->projectSRCommon = $config->SRCommonList[$this->clientLang]; + $lang->productSRCommon = $config->SRCommonList[$this->clientLang]; - $productID = $this->session->product; - if($productID) - { - $storyConcept = $this->dbh->query('SELECT `storyConcept` FROM' . TABLE_PRODUCT . "WHERE id = {$productID}")->fetch(); - $lang->productURCommon = zget($URList, $storyConcept->storyConcept, $config->URCommonList[$this->clientLang]); - $lang->productSRCommon = zget($SRList, $storyConcept->storyConcept, $config->SRCommonList[$this->clientLang]); + $projectID = $this->session->PRJ; + if($projectID) + { + $storyConcept = $this->dbh->query('SELECT `storyConcept` FROM' . TABLE_PROJECT . "WHERE id = {$projectID}")->fetch(); + $lang->projectURCommon = zget($URList, $storyConcept->storyConcept, $config->URCommonList[$this->clientLang]); + $lang->projectSRCommon = zget($SRList, $storyConcept->storyConcept, $config->SRCommonList[$this->clientLang]); + } + + $productID = $this->session->product; + if($productID) + { + $storyConcept = $this->dbh->query('SELECT `storyConcept` FROM' . TABLE_PRODUCT . "WHERE id = {$productID}")->fetch(); + $lang->productURCommon = zget($URList, $storyConcept->storyConcept, $config->URCommonList[$this->clientLang]); + $lang->productSRCommon = zget($SRList, $storyConcept->storyConcept, $config->SRCommonList[$this->clientLang]); + } } } diff --git a/lib/scm/gitrepo.class.php b/lib/scm/gitrepo.class.php index 7f30f2e0d8..85dc840167 100644 --- a/lib/scm/gitrepo.class.php +++ b/lib/scm/gitrepo.class.php @@ -37,6 +37,8 @@ class GitRepo */ public function ls($path, $revision = 'HEAD') { + if(!scm::checkRevision($revision)) return array(); + $path = ltrim($path, DIRECTORY_SEPARATOR); $sub = ''; chdir($this->root); @@ -99,6 +101,8 @@ class GitRepo */ public function tags($path, $revision = 'HEAD') { + if(!scm::checkRevision($revision)) return array(); + chdir($this->root); $cmd = escapeCmd("$this->client tag --sort=taggerdate"); $list = execCmd($cmd . ' 2>&1', 'array', $result); @@ -166,6 +170,9 @@ class GitRepo */ public function log($path, $fromRevision = 0, $toRevision = 'HEAD', $count = 0) { + if(!scm::checkRevision($fromRevision)) return array(); + if(!scm::checkRevision($toRevision)) return array(); + $path = ltrim($path, DIRECTORY_SEPARATOR); $count = $count == 0 ? '' : "-n $count"; /* compatible with svn. */ @@ -206,6 +213,8 @@ class GitRepo */ public function blame($path, $revision) { + if(!scm::checkRevision($revision)) return array(); + $path = ltrim($path, DIRECTORY_SEPARATOR); chdir($this->root); $list = execCmd(escapeCmd("$this->client blame -l $revision -- $path"), 'array'); @@ -257,6 +266,9 @@ class GitRepo */ public function diff($path, $fromRevision, $toRevision) { + if(!scm::checkRevision($fromRevision)) return array(); + if(!scm::checkRevision($toRevision)) return array(); + $path = ltrim($path, DIRECTORY_SEPARATOR); chdir($this->root); if($toRevision == 'HEAD' and $this->branch) $toRevision = $this->branch; @@ -280,6 +292,8 @@ class GitRepo */ public function cat($entry, $revision = 'HEAD') { + if(!scm::checkRevision($revision)) return false; + chdir($this->root); if($revision == 'HEAD' and $this->branch) $revision = $this->branch; $cmd = escapeCmd("$this->client show $revision:$entry"); @@ -298,6 +312,8 @@ class GitRepo */ public function info($entry, $revision = 'HEAD') { + if(!scm::checkRevision($revision)) return false; + chdir($this->root); if($revision == 'HEAD' and $this->branch) $revision = $this->branch; $path = ltrim($entry, DIRECTORY_SEPARATOR); @@ -446,6 +462,8 @@ class GitRepo */ public function getCommitCount($commits = 0, $lastVersion = '') { + if(!scm::checkRevision($lastVersion)) return false; + chdir($this->root); $revision = $this->branch ? $this->branch : 'HEAD'; return execCmd(escapeCmd("$this->client rev-list --count $revision -- ./"), 'string'); @@ -489,6 +507,8 @@ class GitRepo */ public function getCommits($version = '', $count = 0, $branch = '') { + if(!scm::checkRevision($version)) return array(); + if($version == 'HEAD' and $branch) $version = $branch; $revision = empty($version) ? $revision : $version; $revision = is_numeric($revision) ? "--skip=$revision $branch" : $revision; diff --git a/lib/scm/scm.class.php b/lib/scm/scm.class.php index 93a2e322ee..a35c9bc5fd 100644 --- a/lib/scm/scm.class.php +++ b/lib/scm/scm.class.php @@ -28,6 +28,7 @@ class scm */ public function ls($path, $revision = 'HEAD') { + if(!scm::checkRevision($revision)) return array(); return $this->engine->ls($path, $revision); } @@ -42,6 +43,7 @@ class scm */ public function tags($path, $revision = 'HEAD', $onlyDir = true) { + if(!scm::checkRevision($revision)) return array(); return $this->engine->tags($path, $revision, $onlyDir); } @@ -68,6 +70,9 @@ class scm */ public function log($path, $fromRevision = 0, $toRevision = 'HEAD', $count = 0) { + if(!scm::checkRevision($fromRevision)) return array(); + if(!scm::checkRevision($toRevision)) return array(); + return $this->engine->log($path, $fromRevision, $toRevision); } @@ -81,6 +86,7 @@ class scm */ public function blame($path, $revision) { + if(!scm::checkRevision($revision)) return array(); return $this->engine->blame($path, $revision); } @@ -109,6 +115,9 @@ class scm */ public function diff($path, $fromRevision = 0, $toRevision = 'HEAD', $parse = 'yes') { + if(!scm::checkRevision($fromRevision)) return array(); + if(!scm::checkRevision($toRevision)) return array(); + $diffs = $this->engine->diff($path, $fromRevision, $toRevision); if($parse != 'yes') return implode("\n", $diffs); @@ -125,6 +134,7 @@ class scm */ public function cat($entry, $revision = 'HEAD') { + if(!scm::checkRevision($revision)) return false; return $this->engine->cat($entry, $revision); } @@ -138,6 +148,7 @@ class scm */ public function info($entry, $revision = 'HEAD') { + if(!scm::checkRevision($revision)) return false; return $this->engine->info($entry, $revision); } @@ -163,6 +174,7 @@ class scm */ public function getCommitCount($commits = 0, $lastVersion = 0) { + if(!scm::checkRevision($lastVersion)) return false; return $this->engine->getCommitCount($commits, $lastVersion); } @@ -199,8 +211,23 @@ class scm */ public function getCommits($version = '', $count = 0, $branch = '') { + if(!scm::checkRevision($version)) return array(); return $this->engine->getCommits($version, $count, $branch); } + + /** + * Check revision + * + * @param int|string $revision + * @static + * @access public + * @return bool + */ + public static function checkRevision($revision) + { + if(preg_match('/[^a-z0-9\^]/i', $revision)) return false; + return true; + } } /** diff --git a/lib/scm/subversion.class.php b/lib/scm/subversion.class.php index 07465cc5c0..31ba586ca7 100644 --- a/lib/scm/subversion.class.php +++ b/lib/scm/subversion.class.php @@ -46,6 +46,8 @@ class Subversion */ public function ls($path, $revision = 'HEAD') { + if(!scm::checkRevision($revision)) return array(); + $resourcePath = $path; $path = '"' . $this->root . '/' . str_replace(array('%2F', '+'), array('/', ' '), urlencode($path)) . '"'; $cmd = $this->replaceAuth(escapeCmd($this->buildCMD($path, 'ls', "-r $revision --xml"))); @@ -98,6 +100,8 @@ class Subversion */ public function tags($path, $revision = 'HEAD', $onlyDir = true) { + if(!scm::checkRevision($revision)) return array(); + $infos = $this->ls($path, $revision); $dirs = array(); foreach($infos as $info) @@ -195,6 +199,9 @@ class Subversion */ public function log($path, $fromRevision = 0, $toRevision = 'HEAD', $count = 0, $quiet = false) { + if(!scm::checkRevision($fromRevision)) return array(); + if(!scm::checkRevision($toRevision)) return array(); + $resourcePath = $path; $count = $count == 0 ? '' : "--limit $count"; $param = $quiet ? '-q' : '-v'; @@ -258,6 +265,8 @@ class Subversion */ public function blame($path, $revision) { + if(!scm::checkRevision($revision)) return array(); + $resourcePath = $path; $path = '"' . $this->root . '/' . str_replace(array('%2F', '+'), array('/', ' '), urlencode($path)) . '"'; $file = $this->replaceAuth(escapeCmd($this->buildCMD($path, 'cat', "-r $revision"))); @@ -327,6 +336,9 @@ class Subversion */ public function diff($path, $fromRevision, $toRevision) { + if(!scm::checkRevision($fromRevision)) return array(); + if(!scm::checkRevision($toRevision)) return array(); + $resourcePath = $path; if($fromRevision == '^') $fromRevision = $toRevision - 1; $path = '"' . $this->root . '/' . str_replace(array('%2F', '+'), array('/', ' '), urlencode($path)) . '"'; @@ -351,6 +363,8 @@ class Subversion */ public function cat($entry, $revision = 'HEAD') { + if(!scm::checkRevision($revision)) return false; + $resourcePath = $entry; $entry = '"' . $this->root . '/' . str_replace(array('%2F', '+'), array('/', ' '), urlencode($entry)) . '"'; $cmd = $this->replaceAuth(escapeCmd($this->buildCMD($entry, 'cat', "-r $revision"))); @@ -374,6 +388,8 @@ class Subversion */ public function info($entry, $revision = 'HEAD') { + if(!scm::checkRevision($revision)) return false; + $resourcePath = $entry; $entry = '"' . $this->root . '/' . str_replace(array('%2F', '+'), array('/', ' '), urlencode($entry)) . '"'; $svnInfo = $this->replaceAuth(escapeCmd($this->buildCMD($entry, 'info', "-r $revision --xml"))); @@ -506,6 +522,8 @@ class Subversion */ public function getCommitCount($commits = 0, $lastVersion = 0) { + if(!scm::checkRevision($lastVersion)) return false; + if(empty($commits)) $commits = 0; if(empty($lastVersion)) $lastVersion = 0; $lastRevision = $this->getLatestRevision(); @@ -563,6 +581,8 @@ class Subversion */ public function getCommits($version = '', $count = 0) { + if(!scm::checkRevision($version)) return array(); + $count = $count == 0 ? '' : "--limit $count"; $path = '"' . $this->root . '"'; if(stripos($this->root, 'https') === 0 or stripos($this->root, 'svn') === 0) diff --git a/module/block/control.php b/module/block/control.php index f1b5fccdd9..2cb10beae2 100644 --- a/module/block/control.php +++ b/module/block/control.php @@ -39,7 +39,6 @@ class block extends control $title = $id == 0 ? $this->lang->block->createBlock : $this->lang->block->editBlock; - $module = zget($this->config->block->moduleIndex, $module, $module); if($module == 'my') { $modules = $this->lang->block->moduleList; @@ -66,7 +65,7 @@ class block extends control elseif(isset($this->lang->block->moduleList[$module])) { $this->get->set('mode', 'getblocklist'); - if($module == 'project') $this->get->set('dashboard', 'project'); + if($module == 'program') $this->get->set('dashboard', 'program'); $this->view->blocks = $this->fetch('block', 'main', "module=$module&id=$id"); $this->view->module = $module; } @@ -215,8 +214,8 @@ class block extends control $commonField = 'common'; if($module == 'program') { - $project = $this->loadModel('program')->getPRJByID($this->session->PRJ); - $commonField = $project->model . 'common'; + $program = $this->loadModel('project')->getByID($this->session->PRJ); + $commonField = $program->model . 'common'; } /* Replace the block Title saved in the database. */ @@ -430,17 +429,17 @@ class block extends control $dashboard = $this->get->dashboard; /* Create a project block. */ - if($dashboard == 'project') + if($dashboard == 'program') { $project = $this->loadModel('program')->getPRJByID($this->session->PRJ); $model = $project->model; } /* Edit a project block. */ - if($id and $block->module == 'project') + if($id and $block->module == 'program') { $model = $block->type; - $dashboard = 'project'; + $dashboard = 'program'; } $blocks = $this->block->getAvailableBlocks($module, $dashboard, $model); @@ -758,7 +757,7 @@ class block extends control * @access public * @return void */ - public function printProjectBlock() + public function printProgramBlock() { $this->app->loadLang('project'); $this->app->loadLang('task'); @@ -817,7 +816,7 @@ class block extends control * @access public * @return void */ - public function printProjectStatisticBlock() + public function printProgramStatisticBlock() { if(!empty($this->params->type) and preg_match('/[^a-zA-Z0-9_]/', $this->params->type)) die(); @@ -912,6 +911,7 @@ class block extends control ->beginIF($storyType)->andWhere('type')->eq($storyType)->fi() ->groupBy('product, stage') ->fetchGroup('product', 'stage'); + /* Padding the stories to sure all status have records. */ foreach($stories as $product => $story) { @@ -1017,7 +1017,7 @@ class block extends control * @access public * @return void */ - public function printExecutionStatisticBlock() + public function printProjectStatisticBlock() { if(!empty($this->params->type) and preg_match('/[^a-zA-Z0-9_]/', $this->params->type)) die(); @@ -1373,7 +1373,7 @@ class block extends control * @access public * @return void */ - public function printProjectDynamicBlock() + public function printProgramDynamicBlock() { $projectID = $this->session->PRJ; @@ -1529,7 +1529,6 @@ class block extends control */ public function printOverviewBlock($module = 'product') { - if($module == 'project') $module = 'execution'; $func = 'print' . ucfirst($module) . 'OverviewBlock'; $this->view->module = $module; $this->$func(); @@ -1569,7 +1568,7 @@ class block extends control * @access public * @return void */ - public function printExecutionOverviewBlock() + public function printProjectOverviewBlock() { $projectID = $this->view->block->module == 'my' ? 0 : (int)$this->session->PRJ; $executions = $this->loadModel('project')->getExecutionList($projectID); @@ -1633,7 +1632,7 @@ class block extends control * @access public * @return void */ - public function printExecutionBlock() + public function printProjectBlock() { $this->app->loadClass('pager', $static = true); if(!empty($this->params->type) and preg_match('/[^a-zA-Z0-9_]/', $this->params->type)) die(); @@ -1773,7 +1772,7 @@ class block extends control * @access public * @return void */ - public function printRecentProjectBlock() + public function printRecentProgramBlock() { /* load pager. */ $this->app->loadClass('pager', $static = true); diff --git a/module/block/lang/de.php b/module/block/lang/de.php index f443a78645..4515fea291 100644 --- a/module/block/lang/de.php +++ b/module/block/lang/de.php @@ -5,9 +5,9 @@ * @copyright Copyright 2009-2015 青岛易软天创网络科技有限公司(QingDao Nature Easy Soft Network Technology Co,LTD, www.cnezsoft.com) * @license ZPL (http://zpl.pub/page/zplv12.html) * @author Yidong Wang - * @package block + * @package block * @version $Id$ - * @link http://www.ranzhi.org + * @link http://www.zentao.net */ $lang->block = new stdclass(); $lang->block->common = 'InfoBlock'; @@ -42,8 +42,8 @@ $lang->block->leftToday = 'Arbeit für Heute'; $lang->block->myTask = 'Aufgaben'; $lang->block->myStory = 'Story'; $lang->block->myBug = 'Bugs'; -$lang->block->myProject = '' . $lang->projectCommon; -$lang->block->myProduct = '' . $lang->productCommon; +$lang->block->myProject = 'Unclosed ' . $lang->projectCommon . 's'; +$lang->block->myProduct = 'Unclosed ' . $lang->productCommon . 's'; $lang->block->delayed = 'Verspätet'; $lang->block->noData = 'Keine Daten für diesen Bericht.'; $lang->block->emptyTip = 'Keine Information'; @@ -67,6 +67,7 @@ $lang->block->consumedHours = 'Consumed Hours'; $lang->block->time = 'No'; $lang->block->week = 'Week'; $lang->block->selectProduct = 'Product selection'; +$lang->block->of = ' von '; $lang->block->params = new stdclass(); $lang->block->params->name = 'Name'; @@ -97,78 +98,78 @@ $lang->block->spent = 'Has Been Spent'; $lang->block->budget = 'Budget'; $lang->block->left = 'Residuals'; -$lang->block->default['waterfall']['project']['1']['title'] = $lang->projectCommon . 'Weekly'; -$lang->block->default['waterfall']['project']['1']['block'] = 'waterfallreport'; -$lang->block->default['waterfall']['project']['1']['source'] = 'project'; -$lang->block->default['waterfall']['project']['1']['grid'] = 8; +$lang->block->default['waterfall']['program']['1']['title'] = $lang->projectCommon . 'Weekly'; +$lang->block->default['waterfall']['program']['1']['block'] = 'waterfallreport'; +$lang->block->default['waterfall']['program']['1']['source'] = 'program'; +$lang->block->default['waterfall']['program']['1']['grid'] = 8; -$lang->block->default['waterfall']['project']['2']['title'] = 'Estimate'; -$lang->block->default['waterfall']['project']['2']['block'] = 'waterfallestimate'; -$lang->block->default['waterfall']['project']['2']['source'] = 'project'; -$lang->block->default['waterfall']['project']['2']['grid'] = 4; +$lang->block->default['waterfall']['program']['2']['title'] = 'Estimate'; +$lang->block->default['waterfall']['program']['2']['block'] = 'waterfallestimate'; +$lang->block->default['waterfall']['program']['2']['source'] = 'program'; +$lang->block->default['waterfall']['program']['2']['grid'] = 4; -$lang->block->default['waterfall']['project']['3']['title'] = 'Plan Gantt Chart'; -$lang->block->default['waterfall']['project']['3']['block'] = 'waterfallgantt'; -$lang->block->default['waterfall']['project']['3']['source'] = 'project'; -$lang->block->default['waterfall']['project']['3']['grid'] = 8; +$lang->block->default['waterfall']['program']['3']['title'] = 'Plan Gantt Chart'; +$lang->block->default['waterfall']['program']['3']['block'] = 'waterfallgantt'; +$lang->block->default['waterfall']['program']['3']['source'] = 'program'; +$lang->block->default['waterfall']['program']['3']['grid'] = 8; -$lang->block->default['waterfall']['project']['4']['title'] = 'Progress Chart'; -$lang->block->default['waterfall']['project']['4']['block'] = 'waterfallprogress'; -$lang->block->default['waterfall']['project']['4']['grid'] = 4; +$lang->block->default['waterfall']['program']['4']['title'] = 'Progress Chart'; +$lang->block->default['waterfall']['program']['4']['block'] = 'waterfallprogress'; +$lang->block->default['waterfall']['program']['4']['grid'] = 4; -$lang->block->default['waterfall']['project']['5']['title'] = 'project Issue'; -$lang->block->default['waterfall']['project']['5']['block'] = 'waterfallissue'; -$lang->block->default['waterfall']['project']['5']['source'] = 'project'; -$lang->block->default['waterfall']['project']['5']['grid'] = 8; +$lang->block->default['waterfall']['program']['5']['title'] = 'project Issue'; +$lang->block->default['waterfall']['program']['5']['block'] = 'waterfallissue'; +$lang->block->default['waterfall']['program']['5']['source'] = 'program'; +$lang->block->default['waterfall']['program']['5']['grid'] = 8; -$lang->block->default['waterfall']['project']['5']['params']['type'] = 'all'; -$lang->block->default['waterfall']['project']['5']['params']['count'] = '15'; -$lang->block->default['waterfall']['project']['5']['params']['orderBy'] = 'id_desc'; +$lang->block->default['waterfall']['program']['5']['params']['type'] = 'all'; +$lang->block->default['waterfall']['program']['5']['params']['count'] = '15'; +$lang->block->default['waterfall']['program']['5']['params']['orderBy'] = 'id_desc'; -$lang->block->default['waterfall']['project']['6']['title'] = 'Dynamic'; -$lang->block->default['waterfall']['project']['6']['block'] = 'dynamic'; -$lang->block->default['waterfall']['project']['6']['grid'] = 4; -$lang->block->default['waterfall']['project']['6']['source'] = ''; +$lang->block->default['waterfall']['program']['6']['title'] = 'Dynamic'; +$lang->block->default['waterfall']['program']['6']['block'] = 'programdynamic'; +$lang->block->default['waterfall']['program']['6']['grid'] = 4; +$lang->block->default['waterfall']['program']['6']['source'] = 'program'; -$lang->block->default['waterfall']['project']['7']['title'] = $lang->projectCommon . 'Risk'; -$lang->block->default['waterfall']['project']['7']['block'] = 'waterfallrisk'; -$lang->block->default['waterfall']['project']['7']['source'] = 'project'; -$lang->block->default['waterfall']['project']['7']['grid'] = 8; +$lang->block->default['waterfall']['program']['7']['title'] = 'Project Risk'; +$lang->block->default['waterfall']['program']['7']['block'] = 'waterfallrisk'; +$lang->block->default['waterfall']['program']['7']['source'] = 'program'; +$lang->block->default['waterfall']['program']['7']['grid'] = 8; -$lang->block->default['waterfall']['project']['7']['params']['type'] = 'all'; -$lang->block->default['waterfall']['project']['7']['params']['count'] = '15'; -$lang->block->default['waterfall']['project']['7']['params']['orderBy'] = 'id_desc'; +$lang->block->default['waterfall']['program']['7']['params']['type'] = 'all'; +$lang->block->default['waterfall']['program']['7']['params']['count'] = '15'; +$lang->block->default['waterfall']['program']['7']['params']['orderBy'] = 'id_desc'; -$lang->block->default['scrum']['project']['1']['title'] = $lang->projectCommon . ' Overall'; -$lang->block->default['scrum']['project']['1']['block'] = 'scrumoverall'; -$lang->block->default['scrum']['project']['1']['grid'] = 8; +$lang->block->default['scrum']['program']['1']['title'] = 'Project Overall'; +$lang->block->default['scrum']['program']['1']['block'] = 'scrumoverview'; +$lang->block->default['scrum']['program']['1']['grid'] = 8; -$lang->block->default['scrum']['project']['2']['title'] = $lang->projectCommon . ' List'; -$lang->block->default['scrum']['project']['2']['block'] = 'scrumlist'; -$lang->block->default['scrum']['project']['2']['grid'] = 8; +$lang->block->default['scrum']['program']['2']['title'] = $lang->projectCommon . ' List'; +$lang->block->default['scrum']['program']['2']['block'] = 'scrumlist'; +$lang->block->default['scrum']['program']['2']['grid'] = 8; -$lang->block->default['scrum']['project']['3']['title'] = 'Test Version'; -$lang->block->default['scrum']['project']['3']['block'] = 'scrumtest'; -$lang->block->default['scrum']['project']['3']['grid'] = 8; +$lang->block->default['scrum']['program']['3']['title'] = 'Test Version'; +$lang->block->default['scrum']['program']['3']['block'] = 'scrumtest'; +$lang->block->default['scrum']['program']['3']['grid'] = 8; -$lang->block->default['scrum']['project']['3']['params']['type'] = 'wait'; -$lang->block->default['scrum']['project']['3']['params']['count'] = '15'; -$lang->block->default['scrum']['project']['3']['params']['orderBy'] = 'id_desc'; +$lang->block->default['scrum']['program']['3']['params']['type'] = 'wait'; +$lang->block->default['scrum']['program']['3']['params']['count'] = '15'; +$lang->block->default['scrum']['program']['3']['params']['orderBy'] = 'id_desc'; -$lang->block->default['scrum']['project']['4']['title'] = $lang->projectCommon . ' Overview'; -$lang->block->default['scrum']['project']['4']['block'] = 'sprint'; -$lang->block->default['scrum']['project']['4']['grid'] = 4; +$lang->block->default['scrum']['program']['4']['title'] = $lang->projectCommon . ' Overview'; +$lang->block->default['scrum']['program']['4']['block'] = 'sprint'; +$lang->block->default['scrum']['program']['4']['grid'] = 4; -$lang->block->default['scrum']['project']['5']['title'] = 'Dynamic'; -$lang->block->default['scrum']['project']['5']['block'] = 'scrumdynamic'; -$lang->block->default['scrum']['project']['5']['grid'] = 4; +$lang->block->default['scrum']['program']['5']['title'] = 'Dynamic'; +$lang->block->default['scrum']['program']['5']['block'] = 'programdynamic'; +$lang->block->default['scrum']['program']['5']['grid'] = 4; $lang->block->default['product']['1']['title'] = $lang->productCommon . ' Berichte'; $lang->block->default['product']['1']['block'] = 'statistic'; $lang->block->default['product']['1']['grid'] = 8; $lang->block->default['product']['1']['params']['type'] = 'all'; -$lang->block->default['product']['1']['params']['count'] = 5; +$lang->block->default['product']['1']['params']['count'] = '20'; $lang->block->default['product']['2']['title'] = $lang->productCommon . ' Übersicht'; $lang->block->default['product']['2']['block'] = 'overview'; @@ -245,7 +246,7 @@ $lang->block->default['qa']['3']['params']['type'] = 'assigntome'; $lang->block->default['qa']['4']['title'] = 'Ausstehende Builds'; $lang->block->default['qa']['4']['block'] = 'testtask'; -$lang->block->default['qa']['4']['grid'] = 4; +$lang->block->default['qa']['4']['grid'] = 8; $lang->block->default['qa']['4']['params']['count'] = 15; $lang->block->default['qa']['4']['params']['orderBy'] = 'id_desc'; @@ -267,9 +268,9 @@ $lang->block->default['full']['my']['3']['grid'] = 4; $lang->block->default['full']['my']['3']['source'] = 'todo'; $lang->block->default['full']['my']['3']['params']['count'] = '20'; -$lang->block->default['full']['my']['4']['title'] = $lang->projectCommon . ' Statistic'; +$lang->block->default['full']['my']['4']['title'] = 'Project Statistic'; $lang->block->default['full']['my']['4']['block'] = 'statistic'; -$lang->block->default['full']['my']['4']['source'] = 'project'; +$lang->block->default['full']['my']['4']['source'] = 'program'; $lang->block->default['full']['my']['4']['grid'] = 8; $lang->block->default['full']['my']['5']['title'] = 'Personal Contribution'; @@ -277,14 +278,14 @@ $lang->block->default['full']['my']['5']['block'] = 'contribute'; $lang->block->default['full']['my']['5']['source'] = ''; $lang->block->default['full']['my']['5']['grid'] = 4; -$lang->block->default['full']['my']['6']['title'] = 'Recent ' . $lang->projectCommon; -$lang->block->default['full']['my']['6']['block'] = 'recentproject'; -$lang->block->default['full']['my']['6']['source'] = 'project'; +$lang->block->default['full']['my']['6']['title'] = 'Recent Project'; +$lang->block->default['full']['my']['6']['block'] = 'recentprogram'; +$lang->block->default['full']['my']['6']['source'] = 'program'; $lang->block->default['full']['my']['6']['grid'] = 8; $lang->block->default['full']['my']['7']['title'] = 'Meine Aufgaben'; $lang->block->default['full']['my']['7']['block'] = 'task'; -$lang->block->default['full']['my']['7']['source'] = 'execution'; +$lang->block->default['full']['my']['7']['source'] = 'project'; $lang->block->default['full']['my']['7']['grid'] = 8; $lang->block->default['full']['my']['7']['params']['orderBy'] = 'id_desc'; @@ -295,9 +296,9 @@ $lang->block->default['full']['my']['8']['title'] = 'Human Input'; $lang->block->default['full']['my']['8']['block'] = 'projectteam'; $lang->block->default['full']['my']['8']['grid'] = 8; -$lang->block->default['full']['my']['9']['title'] = $lang->projectCommon . ' List'; -$lang->block->default['full']['my']['9']['block'] = 'project'; -$lang->block->default['full']['my']['9']['source'] = 'project'; +$lang->block->default['full']['my']['9']['title'] = 'Project List'; +$lang->block->default['full']['my']['9']['block'] = 'program'; +$lang->block->default['full']['my']['9']['source'] = 'program'; $lang->block->default['full']['my']['9']['grid'] = 8; $lang->block->default['full']['my']['9']['params']['orderBy'] = 'id_desc'; @@ -323,22 +324,22 @@ $lang->block->availableBlocks->testtask = 'Testaufgaben'; $lang->block->availableBlocks->risk = 'My Risks'; $lang->block->availableBlocks->issue = 'My Issues'; -$lang->block->moduleList['project'] = 'Project'; -$lang->block->moduleList['product'] = $lang->productCommon; -$lang->block->moduleList['execution'] = 'Execution'; -$lang->block->moduleList['qa'] = 'QA'; -$lang->block->moduleList['todo'] = 'Todos'; +$lang->block->moduleList['program'] = 'Project'; +$lang->block->moduleList['product'] = $lang->productCommon; +$lang->block->moduleList['project'] = 'Execution'; +$lang->block->moduleList['qa'] = 'QA'; +$lang->block->moduleList['todo'] = 'Todos'; -$lang->block->modules['project'] = new stdclass(); -$lang->block->modules['project']->availableBlocks = new stdclass(); -$lang->block->modules['project']->availableBlocks->project = 'Project List'; -$lang->block->modules['project']->availableBlocks->recentproject = 'Recent Project'; -$lang->block->modules['project']->availableBlocks->statistic = 'Project Statistic'; -$lang->block->modules['project']->availableBlocks->projectteam = 'Project Human Input'; +$lang->block->modules['program'] = new stdclass(); +$lang->block->modules['program']->availableBlocks = new stdclass(); +$lang->block->modules['program']->availableBlocks->program = 'Project List'; +$lang->block->modules['program']->availableBlocks->recentprogram = 'Recent Project'; +$lang->block->modules['program']->availableBlocks->statistic = 'Project Statistic'; +$lang->block->modules['program']->availableBlocks->programteam = 'Project Human Input'; $lang->block->modules['scrum']['index'] = new stdclass(); $lang->block->modules['scrum']['index']->availableBlocks = new stdclass(); -$lang->block->modules['scrum']['index']->availableBlocks->scrumoverview = $lang->projectCommon . ' Overview'; +$lang->block->modules['scrum']['index']->availableBlocks->scrumoverview = 'Project Overview'; $lang->block->modules['scrum']['index']->availableBlocks->scrumlist = $lang->projectCommon . ' List'; $lang->block->modules['scrum']['index']->availableBlocks->sprint = $lang->projectCommon . ' Overview'; $lang->block->modules['scrum']['index']->availableBlocks->scrumtest = 'Test Version'; @@ -346,12 +347,12 @@ $lang->block->modules['scrum']['index']->availableBlocks->projectdynamic = 'Dyna $lang->block->modules['waterfall']['index'] = new stdclass(); $lang->block->modules['waterfall']['index']->availableBlocks = new stdclass(); -$lang->block->modules['waterfall']['index']->availableBlocks->waterfallreport = $lang->projectCommon . ' Weekly'; +$lang->block->modules['waterfall']['index']->availableBlocks->waterfallreport = 'Project Weekly'; $lang->block->modules['waterfall']['index']->availableBlocks->waterfallestimate = 'Estimate'; $lang->block->modules['waterfall']['index']->availableBlocks->waterfallgantt = 'Plan Gantt Chart'; $lang->block->modules['waterfall']['index']->availableBlocks->waterfallprogress = 'Progress Chart'; -$lang->block->modules['waterfall']['index']->availableBlocks->waterfallissue = $lang->projectCommon . ' Issue'; -$lang->block->modules['waterfall']['index']->availableBlocks->waterfallrisk = $lang->projectCommon . ' Risk'; +$lang->block->modules['waterfall']['index']->availableBlocks->waterfallissue = 'Project Issue'; +$lang->block->modules['waterfall']['index']->availableBlocks->waterfallrisk = 'Project Risk'; $lang->block->modules['waterfall']['index']->availableBlocks->projectdynamic = 'Dynamics'; $lang->block->modules['product'] = new stdclass(); @@ -363,13 +364,13 @@ $lang->block->modules['product']->availableBlocks->story = 'Story'; $lang->block->modules['product']->availableBlocks->plan = 'Plan'; $lang->block->modules['product']->availableBlocks->release = 'Release'; -$lang->block->modules['execution'] = new stdclass(); -$lang->block->modules['execution']->availableBlocks = new stdclass(); -$lang->block->modules['execution']->availableBlocks->statistic = $lang->projectCommon . ' Berichte'; -$lang->block->modules['execution']->availableBlocks->overview = $lang->projectCommon . ' Übersicht'; -$lang->block->modules['execution']->availableBlocks->list = $lang->projectCommon . ' Liste'; -$lang->block->modules['execution']->availableBlocks->task = 'Aufgaben'; -$lang->block->modules['execution']->availableBlocks->build = 'Build'; +$lang->block->modules['project'] = new stdclass(); +$lang->block->modules['project']->availableBlocks = new stdclass(); +$lang->block->modules['project']->availableBlocks->statistic = 'Ausführen Berichte'; +$lang->block->modules['project']->availableBlocks->overview = 'Ausführen Übersicht'; +$lang->block->modules['project']->availableBlocks->list = 'Ausführen Liste'; +$lang->block->modules['project']->availableBlocks->task = 'Aufgaben'; +$lang->block->modules['project']->availableBlocks->build = 'Build'; $lang->block->modules['qa'] = new stdclass(); $lang->block->modules['qa']->availableBlocks = new stdclass(); @@ -460,21 +461,21 @@ $lang->block->typeList->story['assignedTo'] = 'Mir zugewiesen'; $lang->block->typeList->story['openedBy'] = 'Von mir erstellt'; $lang->block->typeList->story['reviewedBy'] = 'Von mir überprüft'; $lang->block->typeList->story['closedBy'] = 'Von mir geschlossen' ; - + $lang->block->typeList->product['noclosed'] = 'Offen'; $lang->block->typeList->product['closed'] = 'Geschlossen'; $lang->block->typeList->product['all'] = 'Alle'; $lang->block->typeList->product['involved'] = 'Beteiligt'; -$lang->block->typeList->project['undone'] = 'Nicht abgeschlossen'; -$lang->block->typeList->project['doing'] = 'In Arbeit'; -$lang->block->typeList->project['all'] = 'Alle'; -$lang->block->typeList->project['involved'] = 'Betieligt'; +$lang->block->typeList->program['undone'] = 'Nicht abgeschlossen'; +$lang->block->typeList->program['doing'] = 'In Arbeit'; +$lang->block->typeList->program['all'] = 'Alle'; +$lang->block->typeList->program['involved'] = 'Betieligt'; -$lang->block->typeList->execution['undone'] = 'Unfinished'; -$lang->block->typeList->execution['doing'] = 'Ongoing'; -$lang->block->typeList->execution['all'] = 'All'; -$lang->block->typeList->execution['involved'] = 'Involved'; +$lang->block->typeList->project['undone'] = 'Unfinished'; +$lang->block->typeList->project['doing'] = 'Ongoing'; +$lang->block->typeList->project['all'] = 'All'; +$lang->block->typeList->project['involved'] = 'Involved'; $lang->block->typeList->scrum['undone'] = 'Unfinished'; $lang->block->typeList->scrum['doing'] = 'Ongoing中'; @@ -487,19 +488,19 @@ $lang->block->typeList->testtask['blocked'] = 'Blockiert'; $lang->block->typeList->testtask['done'] = 'Erledigt'; $lang->block->typeList->testtask['all'] = 'Alle'; -$lang->block->modules['project']->moreLinkList = new stdclass(); -$lang->block->modules['project']->moreLinkList->recentproject = 'project|prjbrowse|'; -$lang->block->modules['project']->moreLinkList->statistic = 'project|prjbrowse|'; -$lang->block->modules['project']->moreLinkList->project = 'project|prjbrowse|'; -$lang->block->modules['project']->moreLinkList->cmmireport = 'weekly|index|'; -$lang->block->modules['project']->moreLinkList->cmmiestimate = 'workestimation|index|'; -$lang->block->modules['project']->moreLinkList->cmmiissue = 'issue|browse|'; -$lang->block->modules['project']->moreLinkList->cmmirisk = 'risk|browse|'; -$lang->block->modules['project']->moreLinkList->scrumlist = 'project|all|'; -$lang->block->modules['project']->moreLinkList->scrumtest = 'testtask|browse|'; -$lang->block->modules['project']->moreLinkList->scrumproduct = 'product|all|'; -$lang->block->modules['project']->moreLinkList->sprint = 'project|all|'; -$lang->block->modules['project']->moreLinkList->projectdynamic = 'company|dynamic|'; +$lang->block->modules['program']->moreLinkList = new stdclass(); +$lang->block->modules['program']->moreLinkList->recentproject = 'project|prjbrowse|'; +$lang->block->modules['program']->moreLinkList->statistic = 'project|prjbrowse|'; +$lang->block->modules['program']->moreLinkList->project = 'project|prjbrowse|'; +$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->scrumtest = 'testtask|browse|'; +$lang->block->modules['program']->moreLinkList->scrumproduct = 'product|all|'; +$lang->block->modules['program']->moreLinkList->sprint = 'project|all|'; +$lang->block->modules['program']->moreLinkList->projectdynamic = 'company|dynamic|'; $lang->block->modules['product']->moreLinkList = new stdclass(); $lang->block->modules['product']->moreLinkList->list = 'product|all|'; diff --git a/module/block/lang/en.php b/module/block/lang/en.php index a4cb4482c6..7167d864de 100644 --- a/module/block/lang/en.php +++ b/module/block/lang/en.php @@ -5,7 +5,7 @@ * @copyright Copyright 2009-2015 青岛易软天创网络科技有限公司(QingDao Nature Easy Soft Network Technology Co,LTD, www.cnezsoft.com) * @license ZPL (http://zpl.pub/page/zplv12.html) * @author Yidong Wang - * @package block + * @package block * @version $Id$ * @link http://www.zentao.net */ @@ -42,8 +42,8 @@ $lang->block->leftToday = 'Remained Work'; $lang->block->myTask = 'My Tasks'; $lang->block->myStory = 'Stories'; $lang->block->myBug = 'Bugs'; -$lang->block->myProject = '' . $lang->projectCommon . 's'; -$lang->block->myProduct = '' . $lang->productCommon . 's'; +$lang->block->myProject = 'Unclosed ' . $lang->projectCommon . 's'; +$lang->block->myProduct = 'Unclosed ' . $lang->productCommon . 's'; $lang->block->delayed = 'Delayed'; $lang->block->noData = 'No data on this type of reports.'; $lang->block->emptyTip = 'No data.'; @@ -67,7 +67,7 @@ $lang->block->consumedHours = 'Consumed Hours'; $lang->block->time = 'No'; $lang->block->week = 'Week'; $lang->block->selectProduct = 'Product selection'; -$lang->block->connector = ' - '; +$lang->block->of = ' of '; $lang->block->params = new stdclass(); $lang->block->params->name = 'Name'; @@ -98,71 +98,71 @@ $lang->block->spent = 'Has Been Spent'; $lang->block->budget = 'Budget'; $lang->block->left = 'Residuals'; -$lang->block->default['waterfall']['project']['1']['title'] = 'Project Weekly'; -$lang->block->default['waterfall']['project']['1']['block'] = 'waterfallreport'; -$lang->block->default['waterfall']['project']['1']['source'] = 'project'; -$lang->block->default['waterfall']['project']['1']['grid'] = 8; +$lang->block->default['waterfall']['program']['1']['title'] = 'Project Weekly'; +$lang->block->default['waterfall']['program']['1']['block'] = 'waterfallreport'; +$lang->block->default['waterfall']['program']['1']['source'] = 'program'; +$lang->block->default['waterfall']['program']['1']['grid'] = 8; -$lang->block->default['waterfall']['project']['2']['title'] = 'Estimate'; -$lang->block->default['waterfall']['project']['2']['block'] = 'waterfallestimate'; -$lang->block->default['waterfall']['project']['2']['source'] = 'project'; -$lang->block->default['waterfall']['project']['2']['grid'] = 4; +$lang->block->default['waterfall']['program']['2']['title'] = 'Estimate'; +$lang->block->default['waterfall']['program']['2']['block'] = 'waterfallestimate'; +$lang->block->default['waterfall']['program']['2']['source'] = 'program'; +$lang->block->default['waterfall']['program']['2']['grid'] = 4; -$lang->block->default['waterfall']['project']['3']['title'] = 'Plan Gantt Chart'; -$lang->block->default['waterfall']['project']['3']['block'] = 'waterfallgantt'; -$lang->block->default['waterfall']['project']['3']['source'] = 'project'; -$lang->block->default['waterfall']['project']['3']['grid'] = 8; +$lang->block->default['waterfall']['program']['3']['title'] = 'Plan Gantt Chart'; +$lang->block->default['waterfall']['program']['3']['block'] = 'waterfallgantt'; +$lang->block->default['waterfall']['program']['3']['source'] = 'program'; +$lang->block->default['waterfall']['program']['3']['grid'] = 8; -$lang->block->default['waterfall']['project']['4']['title'] = 'Progress Chart'; -$lang->block->default['waterfall']['project']['4']['block'] = 'waterfallprogress'; -$lang->block->default['waterfall']['project']['4']['grid'] = 4; +$lang->block->default['waterfall']['program']['4']['title'] = 'Progress Chart'; +$lang->block->default['waterfall']['program']['4']['block'] = 'waterfallprogress'; +$lang->block->default['waterfall']['program']['4']['grid'] = 4; -$lang->block->default['waterfall']['project']['5']['title'] = 'Program Issue'; -$lang->block->default['waterfall']['project']['5']['block'] = 'waterfallissue'; -$lang->block->default['waterfall']['project']['5']['source'] = 'project'; -$lang->block->default['waterfall']['project']['5']['grid'] = 8; +$lang->block->default['waterfall']['program']['5']['title'] = 'Program Issue'; +$lang->block->default['waterfall']['program']['5']['block'] = 'waterfallissue'; +$lang->block->default['waterfall']['program']['5']['source'] = 'program'; +$lang->block->default['waterfall']['program']['5']['grid'] = 8; -$lang->block->default['waterfall']['project']['5']['params']['type'] = 'all'; -$lang->block->default['waterfall']['project']['5']['params']['count'] = '15'; -$lang->block->default['waterfall']['project']['5']['params']['orderBy'] = 'id_desc'; +$lang->block->default['waterfall']['program']['5']['params']['type'] = 'all'; +$lang->block->default['waterfall']['program']['5']['params']['count'] = '15'; +$lang->block->default['waterfall']['program']['5']['params']['orderBy'] = 'id_desc'; -$lang->block->default['waterfall']['project']['6']['title'] = 'Dynamic'; -$lang->block->default['waterfall']['project']['6']['block'] = 'projectdynamic'; -$lang->block->default['waterfall']['project']['6']['grid'] = 4; -$lang->block->default['waterfall']['project']['6']['source'] = 'project'; +$lang->block->default['waterfall']['program']['6']['title'] = 'Dynamic'; +$lang->block->default['waterfall']['program']['6']['block'] = 'programdynamic'; +$lang->block->default['waterfall']['program']['6']['grid'] = 4; +$lang->block->default['waterfall']['program']['6']['source'] = 'program'; -$lang->block->default['waterfall']['project']['7']['title'] = 'Project Risk'; -$lang->block->default['waterfall']['project']['7']['block'] = 'waterfallrisk'; -$lang->block->default['waterfall']['project']['7']['source'] = 'project'; -$lang->block->default['waterfall']['project']['7']['grid'] = 8; +$lang->block->default['waterfall']['program']['7']['title'] = 'Project Risk'; +$lang->block->default['waterfall']['program']['7']['block'] = 'waterfallrisk'; +$lang->block->default['waterfall']['program']['7']['source'] = 'program'; +$lang->block->default['waterfall']['program']['7']['grid'] = 8; -$lang->block->default['waterfall']['project']['7']['params']['type'] = 'all'; -$lang->block->default['waterfall']['project']['7']['params']['count'] = '15'; -$lang->block->default['waterfall']['project']['7']['params']['orderBy'] = 'id_desc'; +$lang->block->default['waterfall']['program']['7']['params']['type'] = 'all'; +$lang->block->default['waterfall']['program']['7']['params']['count'] = '15'; +$lang->block->default['waterfall']['program']['7']['params']['orderBy'] = 'id_desc'; -$lang->block->default['scrum']['project']['1']['title'] = 'Project Overview'; -$lang->block->default['scrum']['project']['1']['block'] = 'scrumoverview'; -$lang->block->default['scrum']['project']['1']['grid'] = 8; +$lang->block->default['scrum']['program']['1']['title'] = 'Project Overview'; +$lang->block->default['scrum']['program']['1']['block'] = 'scrumoverview'; +$lang->block->default['scrum']['program']['1']['grid'] = 8; -$lang->block->default['scrum']['project']['2']['title'] = $lang->projectCommon . ' List'; -$lang->block->default['scrum']['project']['2']['block'] = 'scrumlist'; -$lang->block->default['scrum']['project']['2']['grid'] = 8; +$lang->block->default['scrum']['program']['2']['title'] = $lang->projectCommon . ' List'; +$lang->block->default['scrum']['program']['2']['block'] = 'scrumlist'; +$lang->block->default['scrum']['program']['2']['grid'] = 8; -$lang->block->default['scrum']['project']['3']['title'] = 'Test Version'; -$lang->block->default['scrum']['project']['3']['block'] = 'scrumtest'; -$lang->block->default['scrum']['project']['3']['grid'] = 8; +$lang->block->default['scrum']['program']['3']['title'] = 'Test Version'; +$lang->block->default['scrum']['program']['3']['block'] = 'scrumtest'; +$lang->block->default['scrum']['program']['3']['grid'] = 8; -$lang->block->default['scrum']['project']['3']['params']['type'] = 'wait'; -$lang->block->default['scrum']['project']['3']['params']['count'] = '15'; -$lang->block->default['scrum']['project']['3']['params']['orderBy'] = 'id_desc'; +$lang->block->default['scrum']['program']['3']['params']['type'] = 'wait'; +$lang->block->default['scrum']['program']['3']['params']['count'] = '15'; +$lang->block->default['scrum']['program']['3']['params']['orderBy'] = 'id_desc'; -$lang->block->default['scrum']['project']['4']['title'] = $lang->projectCommon . ' Overview'; -$lang->block->default['scrum']['project']['4']['block'] = 'sprint'; -$lang->block->default['scrum']['project']['4']['grid'] = 4; +$lang->block->default['scrum']['program']['4']['title'] = $lang->projectCommon . ' Overview'; +$lang->block->default['scrum']['program']['4']['block'] = 'sprint'; +$lang->block->default['scrum']['program']['4']['grid'] = 4; -$lang->block->default['scrum']['project']['5']['title'] = 'Dynamic'; -$lang->block->default['scrum']['project']['5']['block'] = 'projectdynamic'; -$lang->block->default['scrum']['project']['5']['grid'] = 4; +$lang->block->default['scrum']['program']['5']['title'] = 'Dynamic'; +$lang->block->default['scrum']['program']['5']['block'] = 'programdynamic'; +$lang->block->default['scrum']['program']['5']['grid'] = 4; $lang->block->default['product']['1']['title'] = $lang->productCommon . ' Report'; $lang->block->default['product']['1']['block'] = 'statistic'; @@ -190,18 +190,18 @@ $lang->block->default['product']['4']['params']['count'] = 15; $lang->block->default['product']['4']['params']['orderBy'] = 'id_desc'; $lang->block->default['product']['4']['params']['type'] = 'assignedTo'; -$lang->block->default['project']['1']['title'] = $lang->projectCommon . ' Report'; +$lang->block->default['project']['1']['title'] = 'Execution Report'; $lang->block->default['project']['1']['block'] = 'statistic'; $lang->block->default['project']['1']['grid'] = 8; $lang->block->default['project']['1']['params']['type'] = 'all'; $lang->block->default['project']['1']['params']['count'] = '20'; -$lang->block->default['project']['2']['title'] = $lang->projectCommon . ' Overview'; +$lang->block->default['project']['2']['title'] = 'Execution Overview'; $lang->block->default['project']['2']['block'] = 'overview'; $lang->block->default['project']['2']['grid'] = 4; -$lang->block->default['project']['3']['title'] = 'Active ' . $lang->projectCommon . 's'; +$lang->block->default['project']['3']['title'] = 'Active ' . 'Executions'; $lang->block->default['project']['3']['block'] = 'list'; $lang->block->default['project']['3']['grid'] = 8; @@ -268,9 +268,9 @@ $lang->block->default['full']['my']['3']['grid'] = 4; $lang->block->default['full']['my']['3']['source'] = 'todo'; $lang->block->default['full']['my']['3']['params']['count'] = '20'; -$lang->block->default['full']['my']['4']['title'] = $lang->projectCommon . ' Statistic'; +$lang->block->default['full']['my']['4']['title'] = 'Project Statistic'; $lang->block->default['full']['my']['4']['block'] = 'statistic'; -$lang->block->default['full']['my']['4']['source'] = 'project'; +$lang->block->default['full']['my']['4']['source'] = 'program'; $lang->block->default['full']['my']['4']['grid'] = 8; $lang->block->default['full']['my']['5']['title'] = 'Personal Contribution'; @@ -278,9 +278,9 @@ $lang->block->default['full']['my']['5']['block'] = 'contribute'; $lang->block->default['full']['my']['5']['source'] = ''; $lang->block->default['full']['my']['5']['grid'] = 4; -$lang->block->default['full']['my']['6']['title'] = 'Recent ' . $lang->projectCommon; -$lang->block->default['full']['my']['6']['block'] = 'recentproject'; -$lang->block->default['full']['my']['6']['source'] = 'project'; +$lang->block->default['full']['my']['6']['title'] = 'Recent Projects'; +$lang->block->default['full']['my']['6']['block'] = 'recentprogram'; +$lang->block->default['full']['my']['6']['source'] = 'program'; $lang->block->default['full']['my']['6']['grid'] = 8; $lang->block->default['full']['my']['7']['title'] = 'My Tasks'; @@ -293,12 +293,12 @@ $lang->block->default['full']['my']['7']['params']['count'] = '15'; $lang->block->default['full']['my']['7']['params']['type'] = 'assignedTo'; $lang->block->default['full']['my']['8']['title'] = 'Human Input'; -$lang->block->default['full']['my']['8']['block'] = 'projectteam'; +$lang->block->default['full']['my']['8']['block'] = 'programteam'; $lang->block->default['full']['my']['8']['grid'] = 8; $lang->block->default['full']['my']['9']['title'] = $lang->projectCommon . ' List'; -$lang->block->default['full']['my']['9']['block'] = 'project'; -$lang->block->default['full']['my']['9']['source'] = 'project'; +$lang->block->default['full']['my']['9']['block'] = 'program'; +$lang->block->default['full']['my']['9']['source'] = 'program'; $lang->block->default['full']['my']['9']['grid'] = 8; $lang->block->default['full']['my']['9']['params']['orderBy'] = 'id_desc'; @@ -324,26 +324,26 @@ $lang->block->availableBlocks->testtask = 'Requests'; $lang->block->availableBlocks->risk = 'My Risks'; $lang->block->availableBlocks->issue = 'My Issues'; -$lang->block->moduleList['project'] = 'Project'; -$lang->block->moduleList['product'] = $lang->productCommon; -$lang->block->moduleList['execution'] = 'Execution'; -$lang->block->moduleList['qa'] = 'Test'; -$lang->block->moduleList['todo'] = 'Todo'; +$lang->block->moduleList['program'] = 'Project'; +$lang->block->moduleList['product'] = $lang->productCommon; +$lang->block->moduleList['project'] = 'Execution'; +$lang->block->moduleList['qa'] = 'Test'; +$lang->block->moduleList['todo'] = 'Todo'; -$lang->block->modules['project'] = new stdclass(); -$lang->block->modules['project']->availableBlocks = new stdclass(); -$lang->block->modules['project']->availableBlocks->project = 'Project List'; -$lang->block->modules['project']->availableBlocks->recentproject = 'Recent Project'; -$lang->block->modules['project']->availableBlocks->statistic = 'Project Statistic'; -$lang->block->modules['project']->availableBlocks->projectteam = 'Project Human Input'; +$lang->block->modules['program'] = new stdclass(); +$lang->block->modules['program']->availableBlocks = new stdclass(); +$lang->block->modules['program']->availableBlocks->program = 'Project List'; +$lang->block->modules['program']->availableBlocks->recentprogram = 'Recent Project'; +$lang->block->modules['program']->availableBlocks->statistic = 'Project Statistic'; +$lang->block->modules['program']->availableBlocks->programteam = 'Project Human Input'; $lang->block->modules['scrum']['index'] = new stdclass(); $lang->block->modules['scrum']['index']->availableBlocks = new stdclass(); -$lang->block->modules['scrum']['index']->availableBlocks->scrumoverview = $lang->projectCommon . ' Overview'; -$lang->block->modules['scrum']['index']->availableBlocks->scrumlist = $lang->projectCommon . ' List'; -$lang->block->modules['scrum']['index']->availableBlocks->sprint = $lang->projectCommon . ' Overview'; +$lang->block->modules['scrum']['index']->availableBlocks->scrumoverview = 'Project Overview'; +$lang->block->modules['scrum']['index']->availableBlocks->scrumlist = 'Project List'; +$lang->block->modules['scrum']['index']->availableBlocks->sprint = 'Project Overview'; $lang->block->modules['scrum']['index']->availableBlocks->scrumtest = 'Test Version'; -$lang->block->modules['scrum']['index']->availableBlocks->projectdynamic = 'Dynamics'; +$lang->block->modules['scrum']['index']->availableBlocks->programdynamic = 'Dynamics'; $lang->block->modules['waterfall']['index'] = new stdclass(); $lang->block->modules['waterfall']['index']->availableBlocks = new stdclass(); @@ -366,11 +366,11 @@ $lang->block->modules['product']->availableBlocks->release = 'Release'; $lang->block->modules['project'] = new stdclass(); $lang->block->modules['project']->availableBlocks = new stdclass(); -$lang->block->modules['project']->availableBlocks->statistic = $lang->projectCommon . ' Report'; -$lang->block->modules['project']->availableBlocks->overview = $lang->projectCommon . ' Overview'; -$lang->block->modules['project']->availableBlocks->list = $lang->projectCommon . ' List'; -$lang->block->modules['project']->availableBlocks->task = 'Task'; -$lang->block->modules['project']->availableBlocks->build = 'Build'; +$lang->block->modules['project']->availableBlocks->statistic = 'Execution Report'; +$lang->block->modules['project']->availableBlocks->overview = 'Execution Overview'; +$lang->block->modules['project']->availableBlocks->list = 'Execution List'; +$lang->block->modules['project']->availableBlocks->task = 'Task'; +$lang->block->modules['project']->availableBlocks->build = 'Build'; $lang->block->modules['qa'] = new stdclass(); $lang->block->modules['qa']->availableBlocks = new stdclass(); @@ -472,10 +472,10 @@ $lang->block->typeList->project['doing'] = 'Ongoing'; $lang->block->typeList->project['all'] = 'All'; $lang->block->typeList->project['involved'] = 'Involved'; -$lang->block->typeList->execution['undone'] = 'Unfinished'; -$lang->block->typeList->execution['doing'] = 'Ongoing'; -$lang->block->typeList->execution['all'] = 'All'; -$lang->block->typeList->execution['involved'] = 'Involved'; +$lang->block->typeList->program['undone'] = 'Unfinished'; +$lang->block->typeList->program['doing'] = 'Ongoing'; +$lang->block->typeList->program['all'] = 'All'; +$lang->block->typeList->program['involved'] = 'Involved'; $lang->block->typeList->scrum['undone'] = 'Unfinished'; $lang->block->typeList->scrum['doing'] = 'Ongoing中'; @@ -488,19 +488,19 @@ $lang->block->typeList->testtask['blocked'] = 'Blocked'; $lang->block->typeList->testtask['done'] = 'Done'; $lang->block->typeList->testtask['all'] = 'All'; -$lang->block->modules['project']->moreLinkList = new stdclass(); -$lang->block->modules['project']->moreLinkList->recentproject = 'project|prjbrowse|'; -$lang->block->modules['project']->moreLinkList->statistic = 'project|prjbrowse|'; -$lang->block->modules['project']->moreLinkList->project = 'project|prjbrowse|'; -$lang->block->modules['project']->moreLinkList->cmmireport = 'weekly|index|'; -$lang->block->modules['project']->moreLinkList->cmmiestimate = 'workestimation|index|'; -$lang->block->modules['project']->moreLinkList->cmmiissue = 'issue|browse|'; -$lang->block->modules['project']->moreLinkList->cmmirisk = 'risk|browse|'; -$lang->block->modules['project']->moreLinkList->scrumlist = 'project|all|'; -$lang->block->modules['project']->moreLinkList->scrumtest = 'testtask|browse|'; -$lang->block->modules['project']->moreLinkList->scrumproduct = 'product|all|'; -$lang->block->modules['project']->moreLinkList->sprint = 'project|all|'; -$lang->block->modules['project']->moreLinkList->projectdynamic = 'company|dynamic|'; +$lang->block->modules['program']->moreLinkList = new stdclass(); +$lang->block->modules['program']->moreLinkList->recentprogram = 'program|prjbrowse|'; +$lang->block->modules['program']->moreLinkList->statistic = 'program|prjbrowse|'; +$lang->block->modules['program']->moreLinkList->program = 'program|prjbrowse|'; +$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 = 'program|all|'; +$lang->block->modules['program']->moreLinkList->scrumtest = 'testtask|browse|'; +$lang->block->modules['program']->moreLinkList->scrumproduct = 'product|all|'; +$lang->block->modules['program']->moreLinkList->sprint = 'program|all|'; +$lang->block->modules['program']->moreLinkList->projectdynamic = 'company|dynamic|'; $lang->block->modules['product']->moreLinkList = new stdclass(); $lang->block->modules['product']->moreLinkList->list = 'product|all|'; diff --git a/module/block/lang/fr.php b/module/block/lang/fr.php index c5fc76d29a..71c67c6979 100644 --- a/module/block/lang/fr.php +++ b/module/block/lang/fr.php @@ -5,9 +5,10 @@ * @copyright Copyright 2009-2015 青岛易软天创网络科技有限公司(QingDao Nature Easy Soft Network Technology Co,LTD, www.cnezsoft.com) * @license ZPL (http://zpl.pub/page/zplv12.html) * @author Yidong Wang - * @package block + * @package block * @version $Id$ - * @link https://www.zentao.pm + * @link http://www.zentao.net + */ */ $lang->block = new stdclass(); $lang->block->common = 'Bloc'; @@ -42,8 +43,8 @@ $lang->block->leftToday = 'Reste à faire'; $lang->block->myTask = 'Mes Tâches'; $lang->block->myStory = 'Stories'; $lang->block->myBug = 'Bugs'; -$lang->block->myProject = $lang->projectCommon . 's'; -$lang->block->myProduct = '' . $lang->productCommon . 's'; +$lang->block->myProject = 'Unclosed ' . $lang->projectCommon . 's'; +$lang->block->myProduct = 'Unclosed ' . $lang->productCommon . 's'; $lang->block->delayed = 'Ajourné'; $lang->block->noData = 'Pas de données pour ce type de rapport.'; $lang->block->emptyTip = 'No data.'; @@ -67,6 +68,7 @@ $lang->block->consumedHours = 'Consumed Hours'; $lang->block->time = 'No'; $lang->block->week = 'Week'; $lang->block->selectProduct = 'Product selection'; +$lang->block->of = ' di '; $lang->block->params = new stdclass(); $lang->block->params->name = 'Nom'; @@ -365,9 +367,9 @@ $lang->block->modules['product']->availableBlocks->release = 'Release'; $lang->block->modules['execution'] = new stdclass(); $lang->block->modules['execution']->availableBlocks = new stdclass(); -$lang->block->modules['execution']->availableBlocks->statistic = 'Rapport de ' . $lang->projectCommon; -$lang->block->modules['execution']->availableBlocks->overview = "Vue d'ensemble du " . $lang->projectCommon; -$lang->block->modules['execution']->availableBlocks->list = 'Liste ' . $lang->projectCommon; +$lang->block->modules['execution']->availableBlocks->statistic = 'Rapport de exécuter'; +$lang->block->modules['execution']->availableBlocks->overview = "Vue d'ensemble du exécuter"; +$lang->block->modules['execution']->availableBlocks->list = 'Liste exécuter'; $lang->block->modules['execution']->availableBlocks->task = 'Tâches'; $lang->block->modules['execution']->availableBlocks->build = 'Build'; diff --git a/module/block/lang/vi.php b/module/block/lang/vi.php index c7efa8e0c1..ba62d35391 100644 --- a/module/block/lang/vi.php +++ b/module/block/lang/vi.php @@ -3,11 +3,11 @@ * The en file of crm block module of ZenTaoPMS. * * @copyright Copyright 2009-2015 青岛易软天创网络科技有限公司(QingDao Nature Easy Soft Network Technology Co,LTD, www.cnezsoft.com) - * @license ZPL (http://zpl.pub/page/zplv12.html) - * @author Yidong Wang - * @package block - * @version $Id$ - * @link http://www.zentao.net + * @license ZPL (http://zpl.pub/page/zplv12.html) + * @author Yidong Wang + * @package block + * @version $Id$ + * @link http://www.zentao.net */ $lang->block = new stdclass(); $lang->block->common = 'Block'; @@ -42,8 +42,8 @@ $lang->block->leftToday = 'Việc hôm nay'; $lang->block->myTask = 'Nhiệm vụ'; $lang->block->myStory = 'Câu chuyện'; $lang->block->myBug = 'Bugs'; -$lang->block->myProject = '' . $lang->projectCommon; -$lang->block->myProduct = '' . $lang->productCommon; +$lang->block->myProject = 'Unclosed ' . $lang->projectCommon . 's'; +$lang->block->myProduct = 'Unclosed ' . $lang->productCommon . 's'; $lang->block->delayed = 'Tạm ngưng'; $lang->block->noData = 'Không có dữ liệu trên loại báo cáo này.'; $lang->block->emptyTip = 'Không có dữ liệu.'; @@ -67,6 +67,7 @@ $lang->block->consumedHours = 'Consumed Hours'; $lang->block->time = 'No'; $lang->block->week = 'Week'; $lang->block->selectProduct = 'Product selection'; +$lang->block->of = ' thực '; $lang->block->params = new stdclass(); $lang->block->params->name = 'Tên'; @@ -97,71 +98,71 @@ $lang->block->spent = 'Has Been Spent'; $lang->block->budget = 'Budget'; $lang->block->left = 'Residuals'; -$lang->block->default['waterfall']['project']['1']['title'] = $lang->projectCommon . 'Weekly'; -$lang->block->default['waterfall']['project']['1']['block'] = 'waterfallreport'; -$lang->block->default['waterfall']['project']['1']['source'] = 'project'; -$lang->block->default['waterfall']['project']['1']['grid'] = 8; +$lang->block->default['waterfall']['program']['1']['title'] = 'Project Weekly'; +$lang->block->default['waterfall']['program']['1']['block'] = 'waterfallreport'; +$lang->block->default['waterfall']['program']['1']['source'] = 'program'; +$lang->block->default['waterfall']['program']['1']['grid'] = 8; -$lang->block->default['waterfall']['project']['2']['title'] = 'Estimate'; -$lang->block->default['waterfall']['project']['2']['block'] = 'waterfallestimate'; -$lang->block->default['waterfall']['project']['2']['source'] = 'project'; -$lang->block->default['waterfall']['project']['2']['grid'] = 4; +$lang->block->default['waterfall']['program']['2']['title'] = 'Estimate'; +$lang->block->default['waterfall']['program']['2']['block'] = 'waterfallestimate'; +$lang->block->default['waterfall']['program']['2']['source'] = 'program'; +$lang->block->default['waterfall']['program']['2']['grid'] = 4; -$lang->block->default['waterfall']['project']['3']['title'] = 'Plan Gantt Chart'; -$lang->block->default['waterfall']['project']['3']['block'] = 'waterfallgantt'; -$lang->block->default['waterfall']['project']['3']['source'] = 'project'; -$lang->block->default['waterfall']['project']['3']['grid'] = 8; +$lang->block->default['waterfall']['program']['3']['title'] = 'Plan Gantt Chart'; +$lang->block->default['waterfall']['program']['3']['block'] = 'waterfallgantt'; +$lang->block->default['waterfall']['program']['3']['source'] = 'program'; +$lang->block->default['waterfall']['program']['3']['grid'] = 8; -$lang->block->default['waterfall']['project']['4']['title'] = 'Progress Chart'; -$lang->block->default['waterfall']['project']['4']['block'] = 'waterfallprogress'; -$lang->block->default['waterfall']['project']['4']['grid'] = 4; +$lang->block->default['waterfall']['program']['4']['title'] = 'Progress Chart'; +$lang->block->default['waterfall']['program']['4']['block'] = 'waterfallprogress'; +$lang->block->default['waterfall']['program']['4']['grid'] = 4; -$lang->block->default['waterfall']['project']['5']['title'] = 'project Issue'; -$lang->block->default['waterfall']['project']['5']['block'] = 'waterfallissue'; -$lang->block->default['waterfall']['project']['5']['source'] = 'project'; -$lang->block->default['waterfall']['project']['5']['grid'] = 8; +$lang->block->default['waterfall']['program']['5']['title'] = 'Project Issue'; +$lang->block->default['waterfall']['program']['5']['block'] = 'waterfallissue'; +$lang->block->default['waterfall']['program']['5']['source'] = 'program'; +$lang->block->default['waterfall']['program']['5']['grid'] = 8; -$lang->block->default['waterfall']['project']['5']['params']['type'] = 'all'; -$lang->block->default['waterfall']['project']['5']['params']['count'] = '15'; -$lang->block->default['waterfall']['project']['5']['params']['orderBy'] = 'id_desc'; +$lang->block->default['waterfall']['program']['5']['params']['type'] = 'all'; +$lang->block->default['waterfall']['program']['5']['params']['count'] = '15'; +$lang->block->default['waterfall']['program']['5']['params']['orderBy'] = 'id_desc'; -$lang->block->default['waterfall']['project']['6']['title'] = 'Dynamic'; -$lang->block->default['waterfall']['project']['6']['block'] = 'dynamic'; -$lang->block->default['waterfall']['project']['6']['grid'] = 4; -$lang->block->default['waterfall']['project']['6']['source'] = ''; +$lang->block->default['waterfall']['program']['6']['title'] = 'Dynamic'; +$lang->block->default['waterfall']['program']['6']['block'] = 'dynamic'; +$lang->block->default['waterfall']['program']['6']['grid'] = 4; +$lang->block->default['waterfall']['program']['6']['source'] = ''; -$lang->block->default['waterfall']['project']['7']['title'] = $lang->projectCommon . 'Risk'; -$lang->block->default['waterfall']['project']['7']['block'] = 'waterfallrisk'; -$lang->block->default['waterfall']['project']['7']['source'] = 'project'; -$lang->block->default['waterfall']['project']['7']['grid'] = 8; +$lang->block->default['waterfall']['program']['7']['title'] = 'Project Risk'; +$lang->block->default['waterfall']['program']['7']['block'] = 'waterfallrisk'; +$lang->block->default['waterfall']['program']['7']['source'] = 'program'; +$lang->block->default['waterfall']['program']['7']['grid'] = 8; -$lang->block->default['waterfall']['project']['7']['params']['type'] = 'all'; -$lang->block->default['waterfall']['project']['7']['params']['count'] = '15'; -$lang->block->default['waterfall']['project']['7']['params']['orderBy'] = 'id_desc'; +$lang->block->default['waterfall']['program']['7']['params']['type'] = 'all'; +$lang->block->default['waterfall']['program']['7']['params']['count'] = '15'; +$lang->block->default['waterfall']['program']['7']['params']['orderBy'] = 'id_desc'; -$lang->block->default['scrum']['project']['1']['title'] = $lang->projectCommon . ' Overall'; -$lang->block->default['scrum']['project']['1']['block'] = 'scrumoverall'; -$lang->block->default['scrum']['project']['1']['grid'] = 8; +$lang->block->default['scrum']['program']['1']['title'] = 'Project Overall'; +$lang->block->default['scrum']['program']['1']['block'] = 'scrumoverall'; +$lang->block->default['scrum']['program']['1']['grid'] = 8; -$lang->block->default['scrum']['project']['2']['title'] = $lang->projectCommon . ' List'; -$lang->block->default['scrum']['project']['2']['block'] = 'scrumlist'; -$lang->block->default['scrum']['project']['2']['grid'] = 8; +$lang->block->default['scrum']['program']['2']['title'] = 'Project List'; +$lang->block->default['scrum']['program']['2']['block'] = 'scrumlist'; +$lang->block->default['scrum']['program']['2']['grid'] = 8; -$lang->block->default['scrum']['project']['3']['title'] = 'Test Version'; -$lang->block->default['scrum']['project']['3']['block'] = 'scrumtest'; -$lang->block->default['scrum']['project']['3']['grid'] = 8; +$lang->block->default['scrum']['program']['3']['title'] = 'Test Version'; +$lang->block->default['scrum']['program']['3']['block'] = 'scrumtest'; +$lang->block->default['scrum']['program']['3']['grid'] = 8; -$lang->block->default['scrum']['project']['3']['params']['type'] = 'all'; -$lang->block->default['scrum']['project']['3']['params']['count'] = '15'; -$lang->block->default['scrum']['project']['3']['params']['orderBy'] = 'id_desc'; +$lang->block->default['scrum']['program']['3']['params']['type'] = 'all'; +$lang->block->default['scrum']['program']['3']['params']['count'] = '15'; +$lang->block->default['scrum']['program']['3']['params']['orderBy'] = 'id_desc'; -$lang->block->default['scrum']['project']['4']['title'] = $lang->projectCommon . ' Overview'; -$lang->block->default['scrum']['project']['4']['block'] = 'sprint'; -$lang->block->default['scrum']['project']['4']['grid'] = 4; +$lang->block->default['scrum']['program']['4']['title'] = 'Project Overview'; +$lang->block->default['scrum']['program']['4']['block'] = 'sprint'; +$lang->block->default['scrum']['program']['4']['grid'] = 4; -$lang->block->default['scrum']['project']['5']['title'] = 'Dynamic'; -$lang->block->default['scrum']['project']['5']['block'] = 'scrumdynamic'; -$lang->block->default['scrum']['project']['5']['grid'] = 4; +$lang->block->default['scrum']['program']['5']['title'] = 'Dynamic'; +$lang->block->default['scrum']['program']['5']['block'] = 'scrumdynamic'; +$lang->block->default['scrum']['program']['5']['grid'] = 4; $lang->block->default['product']['1']['title'] = 'Báo cáo '.$lang->productCommon; $lang->block->default['product']['1']['block'] = 'statistic'; @@ -267,9 +268,9 @@ $lang->block->default['full']['my']['3']['grid'] = 4; $lang->block->default['full']['my']['3']['source'] = 'todo'; $lang->block->default['full']['my']['3']['params']['count'] = '20'; -$lang->block->default['full']['my']['4']['title'] = $lang->projectCommon . ' Statistic'; +$lang->block->default['full']['my']['4']['title'] = 'Project Statistic'; $lang->block->default['full']['my']['4']['block'] = 'statistic'; -$lang->block->default['full']['my']['4']['source'] = 'project'; +$lang->block->default['full']['my']['4']['source'] = 'program'; $lang->block->default['full']['my']['4']['grid'] = 8; $lang->block->default['full']['my']['5']['title'] = 'Personal Contribution'; @@ -277,9 +278,9 @@ $lang->block->default['full']['my']['5']['block'] = 'contribute'; $lang->block->default['full']['my']['5']['source'] = ''; $lang->block->default['full']['my']['5']['grid'] = 4; -$lang->block->default['full']['my']['6']['title'] = 'Recent ' . $lang->projectCommon; -$lang->block->default['full']['my']['6']['block'] = 'recentproject'; -$lang->block->default['full']['my']['6']['source'] = 'project'; +$lang->block->default['full']['my']['6']['title'] = 'Recent Projects'; +$lang->block->default['full']['my']['6']['block'] = 'recentprogram'; +$lang->block->default['full']['my']['6']['source'] = 'program'; $lang->block->default['full']['my']['6']['grid'] = 8; $lang->block->default['full']['my']['7']['title'] = 'Nhiệm vụ'; @@ -292,12 +293,12 @@ $lang->block->default['full']['my']['7']['params']['count'] = '15'; $lang->block->default['full']['my']['7']['params']['type'] = 'assignedTo'; $lang->block->default['full']['my']['8']['title'] = 'Human Input'; -$lang->block->default['full']['my']['8']['block'] = 'projectteam'; +$lang->block->default['full']['my']['8']['block'] = 'programteam'; $lang->block->default['full']['my']['8']['grid'] = 8; -$lang->block->default['full']['my']['9']['title'] = $lang->projectCommon . ' List'; -$lang->block->default['full']['my']['9']['block'] = 'project'; -$lang->block->default['full']['my']['9']['source'] = 'project'; +$lang->block->default['full']['my']['9']['title'] = 'Project List'; +$lang->block->default['full']['my']['9']['block'] = 'program'; +$lang->block->default['full']['my']['9']['source'] = 'program'; $lang->block->default['full']['my']['9']['grid'] = 8; $lang->block->default['full']['my']['9']['params']['orderBy'] = 'id_desc'; @@ -323,18 +324,18 @@ $lang->block->availableBlocks->testtask = 'Yêu cầu'; $lang->block->availableBlocks->risk = 'My Risks'; $lang->block->availableBlocks->issue = 'My Issues'; -$lang->block->moduleList['project'] = $lang->projectCommon; +$lang->block->moduleList['program'] = 'Project'; $lang->block->moduleList['product'] = $lang->productCommon; -$lang->block->moduleList['execution'] = $lang->projectCommon; +$lang->block->moduleList['project'] = 'Execution'; $lang->block->moduleList['qa'] = 'QA'; $lang->block->moduleList['todo'] = 'Việc làm'; -$lang->block->modules['project'] = new stdclass(); -$lang->block->modules['project']->availableBlocks = new stdclass(); -$lang->block->modules['project']->availableBlocks->project = $lang->projectCommon . ' List'; -$lang->block->modules['project']->availableBlocks->recentproject = 'Recent ' . $lang->projectCommon; -$lang->block->modules['project']->availableBlocks->statistic = $lang->projectCommon . ' Statistic'; -$lang->block->modules['project']->availableBlocks->projectteam = $lang->projectCommon . 'Human Input'; +$lang->block->modules['program'] = new stdclass(); +$lang->block->modules['program']->availableBlocks = new stdclass(); +$lang->block->modules['program']->availableBlocks->project = $lang->projectCommon . ' List'; +$lang->block->modules['program']->availableBlocks->recentproject = 'Recent ' . $lang->projectCommon; +$lang->block->modules['program']->availableBlocks->statistic = $lang->projectCommon . ' Statistic'; +$lang->block->modules['program']->availableBlocks->projectteam = $lang->projectCommon . 'Human Input'; $lang->block->modules['scrum']['index'] = new stdclass(); $lang->block->modules['scrum']['index']->availableBlocks = new stdclass(); @@ -363,13 +364,13 @@ $lang->block->modules['product']->availableBlocks->story = 'Câu chuyện'; $lang->block->modules['product']->availableBlocks->plan = 'Kế hoạch'; $lang->block->modules['product']->availableBlocks->release = 'Phát hành'; -$lang->block->modules['execution'] = new stdclass(); -$lang->block->modules['execution']->availableBlocks = new stdclass(); -$lang->block->modules['execution']->availableBlocks->statistic = 'Báo cáo '.$lang->projectCommon; -$lang->block->modules['execution']->availableBlocks->overview = 'Tổng quan '.$lang->projectCommon ; -$lang->block->modules['execution']->availableBlocks->list = $lang->projectCommon . ' danh sách'; -$lang->block->modules['execution']->availableBlocks->task = 'Nhiệm vụ'; -$lang->block->modules['execution']->availableBlocks->build = 'Bản dựng'; +$lang->block->modules['project'] = new stdclass(); +$lang->block->modules['project']->availableBlocks = new stdclass(); +$lang->block->modules['project']->availableBlocks->statistic = 'Báo cáo thực'; +$lang->block->modules['project']->availableBlocks->overview = 'Tổng quan thực'; +$lang->block->modules['project']->availableBlocks->list = 'Thực danh sách'; +$lang->block->modules['project']->availableBlocks->task = 'Nhiệm vụ'; +$lang->block->modules['project']->availableBlocks->build = 'Bản dựng'; $lang->block->modules['qa'] = new stdclass(); $lang->block->modules['qa']->availableBlocks = new stdclass(); @@ -471,10 +472,10 @@ $lang->block->typeList->project['doing'] = 'Đang làm'; $lang->block->typeList->project['all'] = 'Tất cả'; $lang->block->typeList->project['involved'] = 'Liên đới'; -$lang->block->typeList->execution['undone'] = 'Unfinished'; -$lang->block->typeList->execution['doing'] = 'Ongoing'; -$lang->block->typeList->execution['all'] = 'All'; -$lang->block->typeList->execution['involved'] = 'Involved'; +$lang->block->typeList->program['undone'] = 'Unfinished'; +$lang->block->typeList->program['doing'] = 'Ongoing'; +$lang->block->typeList->program['all'] = 'All'; +$lang->block->typeList->program['involved'] = 'Involved'; $lang->block->typeList->scrum['undone'] = 'Unfinished'; $lang->block->typeList->scrum['doing'] = 'Ongoing中'; @@ -487,19 +488,19 @@ $lang->block->typeList->testtask['blocked'] = 'Bị khóa'; $lang->block->typeList->testtask['done'] = 'Hoàn thành'; $lang->block->typeList->testtask['all'] = 'Tất cả'; -$lang->block->modules['project']->moreLinkList = new stdclass(); -$lang->block->modules['project']->moreLinkList->recentproject = 'project|prjbrowse|'; -$lang->block->modules['project']->moreLinkList->statistic = 'project|prjbrowse|'; -$lang->block->modules['project']->moreLinkList->project = 'project|prjbrowse|'; -$lang->block->modules['project']->moreLinkList->cmmireport = 'weekly|index|'; -$lang->block->modules['project']->moreLinkList->cmmiestimate = 'workestimation|index|'; -$lang->block->modules['project']->moreLinkList->cmmiissue = 'issue|browse|'; -$lang->block->modules['project']->moreLinkList->cmmirisk = 'risk|browse|'; -$lang->block->modules['project']->moreLinkList->scrumlist = 'project|all|'; -$lang->block->modules['project']->moreLinkList->scrumtest = 'testtask|browse|'; -$lang->block->modules['project']->moreLinkList->scrumproduct = 'product|all|'; -$lang->block->modules['project']->moreLinkList->sprint = 'project|all|'; -$lang->block->modules['project']->moreLinkList->projectdynamic = 'company|dynamic|'; +$lang->block->modules['program']->moreLinkList = new stdclass(); +$lang->block->modules['program']->moreLinkList->recentprogram = 'program|prjbrowse|'; +$lang->block->modules['program']->moreLinkList->statistic = 'program|prjbrowse|'; +$lang->block->modules['program']->moreLinkList->program = 'program|prjbrowse|'; +$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 = 'program|all|'; +$lang->block->modules['program']->moreLinkList->scrumtest = 'testtask|browse|'; +$lang->block->modules['program']->moreLinkList->scrumproduct = 'product|all|'; +$lang->block->modules['program']->moreLinkList->sprint = 'program|all|'; +$lang->block->modules['program']->moreLinkList->projectdynamic = 'company|dynamic|'; $lang->block->modules['product']->moreLinkList = new stdclass(); $lang->block->modules['product']->moreLinkList->list = 'product|all|'; diff --git a/module/block/lang/zh-cn.php b/module/block/lang/zh-cn.php index dd4e4bfa0e..8256ce1b99 100644 --- a/module/block/lang/zh-cn.php +++ b/module/block/lang/zh-cn.php @@ -98,71 +98,71 @@ $lang->block->spent = '已花费'; $lang->block->budget = '预算'; $lang->block->left = '剩余'; -$lang->block->default['waterfall']['project']['1']['title'] = '项目周报'; -$lang->block->default['waterfall']['project']['1']['block'] = 'waterfallreport'; -$lang->block->default['waterfall']['project']['1']['source'] = 'project'; -$lang->block->default['waterfall']['project']['1']['grid'] = 8; +$lang->block->default['waterfall']['program']['1']['title'] = '项目周报'; +$lang->block->default['waterfall']['program']['1']['block'] = 'waterfallreport'; +$lang->block->default['waterfall']['program']['1']['source'] = 'program'; +$lang->block->default['waterfall']['program']['1']['grid'] = 8; -$lang->block->default['waterfall']['project']['2']['title'] = '估算'; -$lang->block->default['waterfall']['project']['2']['block'] = 'waterfallestimate'; -$lang->block->default['waterfall']['project']['2']['source'] = 'project'; -$lang->block->default['waterfall']['project']['2']['grid'] = 4; +$lang->block->default['waterfall']['program']['2']['title'] = '估算'; +$lang->block->default['waterfall']['program']['2']['block'] = 'waterfallestimate'; +$lang->block->default['waterfall']['program']['2']['source'] = 'program'; +$lang->block->default['waterfall']['program']['2']['grid'] = 4; -$lang->block->default['waterfall']['project']['3']['title'] = "项目{$lang->planCommon}"; -$lang->block->default['waterfall']['project']['3']['block'] = 'waterfallgantt'; -$lang->block->default['waterfall']['project']['3']['source'] = 'project'; -$lang->block->default['waterfall']['project']['3']['grid'] = 8; +$lang->block->default['waterfall']['program']['3']['title'] = "项目{$lang->planCommon}"; +$lang->block->default['waterfall']['program']['3']['block'] = 'waterfallgantt'; +$lang->block->default['waterfall']['program']['3']['source'] = 'program'; +$lang->block->default['waterfall']['program']['3']['grid'] = 8; -$lang->block->default['waterfall']['project']['4']['title'] = '到目前为止项目进展趋势图'; -$lang->block->default['waterfall']['project']['4']['block'] = 'waterfallprogress'; -$lang->block->default['waterfall']['project']['4']['grid'] = 4; +$lang->block->default['waterfall']['program']['4']['title'] = '到目前为止项目进展趋势图'; +$lang->block->default['waterfall']['program']['4']['block'] = 'waterfallprogress'; +$lang->block->default['waterfall']['program']['4']['grid'] = 4; -$lang->block->default['waterfall']['project']['5']['title'] = '项目问题'; -$lang->block->default['waterfall']['project']['5']['block'] = 'waterfallissue'; -$lang->block->default['waterfall']['project']['5']['source'] = 'project'; -$lang->block->default['waterfall']['project']['5']['grid'] = 8; +$lang->block->default['waterfall']['program']['5']['title'] = '项目问题'; +$lang->block->default['waterfall']['program']['5']['block'] = 'waterfallissue'; +$lang->block->default['waterfall']['program']['5']['source'] = 'program'; +$lang->block->default['waterfall']['program']['5']['grid'] = 8; -$lang->block->default['waterfall']['project']['5']['params']['type'] = 'all'; -$lang->block->default['waterfall']['project']['5']['params']['count'] = '15'; -$lang->block->default['waterfall']['project']['5']['params']['orderBy'] = 'id_desc'; +$lang->block->default['waterfall']['program']['5']['params']['type'] = 'all'; +$lang->block->default['waterfall']['program']['5']['params']['count'] = '15'; +$lang->block->default['waterfall']['program']['5']['params']['orderBy'] = 'id_desc'; -$lang->block->default['waterfall']['project']['6']['title'] = '最新动态'; -$lang->block->default['waterfall']['project']['6']['block'] = 'projectdynamic'; -$lang->block->default['waterfall']['project']['6']['grid'] = 4; -$lang->block->default['waterfall']['project']['6']['source'] = 'project'; +$lang->block->default['waterfall']['program']['6']['title'] = '最新动态'; +$lang->block->default['waterfall']['program']['6']['block'] = 'programdynamic'; +$lang->block->default['waterfall']['program']['6']['grid'] = 4; +$lang->block->default['waterfall']['program']['6']['source'] = 'program'; -$lang->block->default['waterfall']['project']['7']['title'] = '项目风险'; -$lang->block->default['waterfall']['project']['7']['block'] = 'waterfallrisk'; -$lang->block->default['waterfall']['project']['7']['source'] = 'project'; -$lang->block->default['waterfall']['project']['7']['grid'] = 8; +$lang->block->default['waterfall']['program']['7']['title'] = '项目风险'; +$lang->block->default['waterfall']['program']['7']['block'] = 'waterfallrisk'; +$lang->block->default['waterfall']['program']['7']['source'] = 'program'; +$lang->block->default['waterfall']['program']['7']['grid'] = 8; -$lang->block->default['waterfall']['project']['7']['params']['type'] = 'all'; -$lang->block->default['waterfall']['project']['7']['params']['count'] = '15'; -$lang->block->default['waterfall']['project']['7']['params']['orderBy'] = 'id_desc'; +$lang->block->default['waterfall']['program']['7']['params']['type'] = 'all'; +$lang->block->default['waterfall']['program']['7']['params']['count'] = '15'; +$lang->block->default['waterfall']['program']['7']['params']['orderBy'] = 'id_desc'; -$lang->block->default['scrum']['project']['1']['title'] = '项目整体情况'; -$lang->block->default['scrum']['project']['1']['block'] = 'scrumoverview'; -$lang->block->default['scrum']['project']['1']['grid'] = 8; +$lang->block->default['scrum']['program']['1']['title'] = '项目整体情况'; +$lang->block->default['scrum']['program']['1']['block'] = 'scrumoverview'; +$lang->block->default['scrum']['program']['1']['grid'] = 8; -$lang->block->default['scrum']['project']['2']['title'] = $lang->projectCommon . '列表'; -$lang->block->default['scrum']['project']['2']['block'] = 'scrumlist'; -$lang->block->default['scrum']['project']['2']['grid'] = 8; +$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']['project']['3']['title'] = '待测版本'; -$lang->block->default['scrum']['project']['3']['block'] = 'scrumtest'; -$lang->block->default['scrum']['project']['3']['grid'] = 8; +$lang->block->default['scrum']['program']['3']['title'] = '待测版本'; +$lang->block->default['scrum']['program']['3']['block'] = 'scrumtest'; +$lang->block->default['scrum']['program']['3']['grid'] = 8; -$lang->block->default['scrum']['project']['3']['params']['type'] = 'wait'; -$lang->block->default['scrum']['project']['3']['params']['count'] = '15'; -$lang->block->default['scrum']['project']['3']['params']['orderBy'] = 'id_desc'; +$lang->block->default['scrum']['program']['3']['params']['type'] = 'wait'; +$lang->block->default['scrum']['program']['3']['params']['count'] = '15'; +$lang->block->default['scrum']['program']['3']['params']['orderBy'] = 'id_desc'; -$lang->block->default['scrum']['project']['4']['title'] = $lang->projectCommon . '总览'; -$lang->block->default['scrum']['project']['4']['block'] = 'sprint'; -$lang->block->default['scrum']['project']['4']['grid'] = 4; +$lang->block->default['scrum']['program']['4']['title'] = $lang->projectCommon . '总览'; +$lang->block->default['scrum']['program']['4']['block'] = 'sprint'; +$lang->block->default['scrum']['program']['4']['grid'] = 4; -$lang->block->default['scrum']['project']['5']['title'] = '最新动态'; -$lang->block->default['scrum']['project']['5']['block'] = 'projectdynamic'; -$lang->block->default['scrum']['project']['5']['grid'] = 4; +$lang->block->default['scrum']['program']['5']['title'] = '最新动态'; +$lang->block->default['scrum']['program']['5']['block'] = 'programdynamic'; +$lang->block->default['scrum']['program']['5']['grid'] = 4; $lang->block->default['product']['1']['title'] = $lang->productCommon . '统计'; $lang->block->default['product']['1']['block'] = 'statistic'; @@ -270,7 +270,7 @@ $lang->block->default['full']['my']['3']['params']['count'] = '20'; $lang->block->default['full']['my']['4']['title'] = '项目统计'; $lang->block->default['full']['my']['4']['block'] = 'statistic'; -$lang->block->default['full']['my']['4']['source'] = 'project'; +$lang->block->default['full']['my']['4']['source'] = 'program'; $lang->block->default['full']['my']['4']['grid'] = 8; $lang->block->default['full']['my']['5']['title'] = '我的贡献'; @@ -279,13 +279,13 @@ $lang->block->default['full']['my']['5']['source'] = ''; $lang->block->default['full']['my']['5']['grid'] = 4; $lang->block->default['full']['my']['6']['title'] = '我近期参与的项目'; -$lang->block->default['full']['my']['6']['block'] = 'recentproject'; -$lang->block->default['full']['my']['6']['source'] = 'project'; +$lang->block->default['full']['my']['6']['block'] = 'recentprogram'; +$lang->block->default['full']['my']['6']['source'] = 'program'; $lang->block->default['full']['my']['6']['grid'] = 8; $lang->block->default['full']['my']['7']['title'] = '指派给我的任务'; $lang->block->default['full']['my']['7']['block'] = 'task'; -$lang->block->default['full']['my']['7']['source'] = 'execution'; +$lang->block->default['full']['my']['7']['source'] = 'project'; $lang->block->default['full']['my']['7']['grid'] = 8; $lang->block->default['full']['my']['7']['params']['orderBy'] = 'id_desc'; @@ -297,8 +297,8 @@ $lang->block->default['full']['my']['8']['block'] = 'projectteam'; $lang->block->default['full']['my']['8']['grid'] = 8; $lang->block->default['full']['my']['9']['title'] = '项目列表'; -$lang->block->default['full']['my']['9']['block'] = 'project'; -$lang->block->default['full']['my']['9']['source'] = 'project'; +$lang->block->default['full']['my']['9']['block'] = 'program'; +$lang->block->default['full']['my']['9']['source'] = 'program'; $lang->block->default['full']['my']['9']['grid'] = 8; $lang->block->default['full']['my']['9']['params']['orderBy'] = 'id_desc'; @@ -324,18 +324,18 @@ $lang->block->availableBlocks->testtask = '测试版本列表'; $lang->block->availableBlocks->risk = '我的风险'; $lang->block->availableBlocks->issue = '我的问题'; -$lang->block->moduleList['project'] = '项目'; -$lang->block->moduleList['product'] = $lang->productCommon; -$lang->block->moduleList['execution'] = '执行'; -$lang->block->moduleList['qa'] = '测试'; -$lang->block->moduleList['todo'] = '待办'; +$lang->block->moduleList['program'] = '项目'; +$lang->block->moduleList['product'] = $lang->productCommon; +$lang->block->moduleList['project'] = '执行'; +$lang->block->moduleList['qa'] = '测试'; +$lang->block->moduleList['todo'] = '待办'; -$lang->block->modules['project'] = new stdclass(); -$lang->block->modules['project']->availableBlocks = new stdclass(); -$lang->block->modules['project']->availableBlocks->project = '项目列表'; -$lang->block->modules['project']->availableBlocks->recentproject = '近期项目'; -$lang->block->modules['project']->availableBlocks->statistic = '项目统计'; -$lang->block->modules['project']->availableBlocks->projectteam = '项目人力投入'; +$lang->block->modules['program'] = new stdclass(); +$lang->block->modules['program']->availableBlocks = new stdclass(); +$lang->block->modules['program']->availableBlocks->program = '项目列表'; +$lang->block->modules['program']->availableBlocks->recentprogram = '近期项目'; +$lang->block->modules['program']->availableBlocks->statistic = '项目统计'; +$lang->block->modules['program']->availableBlocks->programteam = '项目人力投入'; $lang->block->modules['scrum']['index'] = new stdclass(); $lang->block->modules['scrum']['index']->availableBlocks = new stdclass(); @@ -364,13 +364,13 @@ $lang->block->modules['product']->availableBlocks->story = "{$lang->SRCommon $lang->block->modules['product']->availableBlocks->plan = "{$lang->planCommon}列表"; $lang->block->modules['product']->availableBlocks->release = '发布列表'; -$lang->block->modules['execution'] = new stdclass(); -$lang->block->modules['execution']->availableBlocks = new stdclass(); -$lang->block->modules['execution']->availableBlocks->statistic = $lang->projectCommon . '统计'; -$lang->block->modules['execution']->availableBlocks->overview = $lang->projectCommon . '总览'; -$lang->block->modules['execution']->availableBlocks->list = $lang->projectCommon . '列表'; -$lang->block->modules['execution']->availableBlocks->task = '任务列表'; -$lang->block->modules['execution']->availableBlocks->build = '版本列表'; +$lang->block->modules['project'] = new stdclass(); +$lang->block->modules['project']->availableBlocks = new stdclass(); +$lang->block->modules['project']->availableBlocks->statistic = '执行统计'; +$lang->block->modules['project']->availableBlocks->overview = '执行总览'; +$lang->block->modules['project']->availableBlocks->list = '执行列表'; +$lang->block->modules['project']->availableBlocks->task = '任务列表'; +$lang->block->modules['project']->availableBlocks->build = '版本列表'; $lang->block->modules['qa'] = new stdclass(); $lang->block->modules['qa']->availableBlocks = new stdclass(); @@ -467,16 +467,16 @@ $lang->block->typeList->product['closed'] = '已关闭'; $lang->block->typeList->product['all'] = '全部'; $lang->block->typeList->product['involved'] = '我参与'; +$lang->block->typeList->program['undone'] = '未完成'; +$lang->block->typeList->program['doing'] = '进行中'; +$lang->block->typeList->program['all'] = '全部'; +$lang->block->typeList->program['involved'] = '我参与的'; + $lang->block->typeList->project['undone'] = '未完成'; $lang->block->typeList->project['doing'] = '进行中'; $lang->block->typeList->project['all'] = '全部'; $lang->block->typeList->project['involved'] = '我参与'; -$lang->block->typeList->execution['undone'] = '未完成'; -$lang->block->typeList->execution['doing'] = '进行中'; -$lang->block->typeList->execution['all'] = '全部'; -$lang->block->typeList->execution['involved'] = '我参与'; - $lang->block->typeList->scrum['undone'] = '未完成'; $lang->block->typeList->scrum['doing'] = '进行中'; $lang->block->typeList->scrum['all'] = '全部'; @@ -488,19 +488,19 @@ $lang->block->typeList->testtask['blocked'] = '阻塞版本'; $lang->block->typeList->testtask['done'] = '已测版本'; $lang->block->typeList->testtask['all'] = '全部'; -$lang->block->modules['project']->moreLinkList = new stdclass(); -$lang->block->modules['project']->moreLinkList->recentproject = 'project|prjbrowse|'; -$lang->block->modules['project']->moreLinkList->statistic = 'project|prjbrowse|'; -$lang->block->modules['project']->moreLinkList->project = 'project|prjbrowse|'; -$lang->block->modules['project']->moreLinkList->cmmireport = 'weekly|index|'; -$lang->block->modules['project']->moreLinkList->cmmiestimate = 'workestimation|index|'; -$lang->block->modules['project']->moreLinkList->cmmiissue = 'issue|browse|'; -$lang->block->modules['project']->moreLinkList->cmmirisk = 'risk|browse|'; -$lang->block->modules['project']->moreLinkList->scrumlist = 'project|all|'; -$lang->block->modules['project']->moreLinkList->scrumtest = 'testtask|browse|'; -$lang->block->modules['project']->moreLinkList->scrumproduct = 'product|all|'; -$lang->block->modules['project']->moreLinkList->sprint = 'project|all|'; -$lang->block->modules['project']->moreLinkList->projectdynamic = 'company|dynamic|'; +$lang->block->modules['program']->moreLinkList = new stdclass(); +$lang->block->modules['program']->moreLinkList->recentproject = 'project|prjbrowse|'; +$lang->block->modules['program']->moreLinkList->statistic = 'project|prjbrowse|'; +$lang->block->modules['program']->moreLinkList->project = 'project|prjbrowse|'; +$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->scrumtest = 'testtask|browse|'; +$lang->block->modules['program']->moreLinkList->scrumproduct = 'product|all|'; +$lang->block->modules['program']->moreLinkList->sprint = 'project|all|'; +$lang->block->modules['program']->moreLinkList->projectdynamic = 'company|dynamic|'; $lang->block->modules['product']->moreLinkList = new stdclass(); $lang->block->modules['product']->moreLinkList->list = 'product|all|'; diff --git a/module/block/model.php b/module/block/model.php index 821b8e0c02..e0e523c1d7 100644 --- a/module/block/model.php +++ b/module/block/model.php @@ -223,7 +223,7 @@ class blockModel extends model $account = $this->app->user->account; if($module == 'program') { - $blocks = $this->lang->block->default[$type]['project']; + $blocks = $this->lang->block->default[$type]['program']; $projectID = $this->session->PRJ; $project = $this->loadModel('program')->getPRJByID($projectID); @@ -267,7 +267,7 @@ class blockModel extends model public function getAvailableBlocks($module = '', $dashboard = '', $model = '') { $blocks = $this->lang->block->availableBlocks; - if($dashboard == 'project') + if($dashboard == 'program') { $blocks = $this->lang->block->modules[$model]['index']->availableBlocks; } @@ -445,7 +445,7 @@ class blockModel extends model * @access public * @return json */ - public function getProjectParams() + public function getProgramParams() { $this->app->loadLang('program'); $params->type['name'] = $this->lang->block->type; @@ -465,7 +465,7 @@ class blockModel extends model * @access public * @return json */ - public function getProjectTeamParams() + public function getProgramTeamParams() { $this->app->loadLang('program'); $params->type['name'] = $this->lang->block->type; @@ -516,7 +516,6 @@ class blockModel extends model if($module == 'product') return $this->getProductStatisticParams($module); if($module == 'project') return $this->getProjectStatisticParams($module); if($module == 'qa') return $this->getQaStatisticParams($module); - if($module == 'execution') return $this->getExecutionStatisticParams($module); $params = new stdclass(); $params = $this->appendCountParams($params); @@ -593,7 +592,7 @@ class blockModel extends model * @access public * @return string */ - public function getRecentProjectParams() + public function getRecentProgramParams() { return false; } @@ -704,7 +703,7 @@ class blockModel extends model * @access public * @return json */ - public function getExecutionParams() + public function getProjectParams() { $params->type['name'] = $this->lang->block->type; $params->type['options'] = $this->lang->block->typeList->project; @@ -922,7 +921,7 @@ class blockModel extends model * @access public * @return string */ - public function getProjectDynamicParams($module = '') + public function getProgramDynamicParams($module = '') { $params = $this->appendCountParams(); diff --git a/module/block/view/executionblock.html.php b/module/block/view/executionblock.html.php deleted file mode 100644 index df642f9424..0000000000 --- a/module/block/view/executionblock.html.php +++ /dev/null @@ -1,73 +0,0 @@ - - * @package block - * @version $Id$ - * @link http://www.zentao.net - */ -?> - -
" . $lang->project->create, '', "class='btn btn-primary'")?>
- -
- - - - - - - - - - - - - - - - - - - - - - get->entry}'" : "class='text-center'"; - $viewLink = $this->createLink('project', 'task', 'project=' . $execution->id); - ?> - > - - - - - - - - - - - - - - - -
project->name;?>project->end;?>statusAB;?>project->totalEstimate;?>project->totalConsumed;?>project->totalLeft;?>project->progress;?>project->burn;?>
createLink('project', 'task', 'project=' . $execution->id), $execution->name, '', "title='$execution->name'");?>end;?> - delay)):?> - project->delayed;?> - - processStatus('project', $execution);?> - - - hours->totalEstimate;?>hours->totalConsumed;?>hours->totalLeft;?> -
-
- hours->progress;?>% -
-
-
burns);?>'>
-
- diff --git a/module/block/view/productstatisticblock.html.php b/module/block/view/productstatisticblock.html.php index 5c0943338d..4182ea177f 100644 --- a/module/block/view/productstatisticblock.html.php +++ b/module/block/view/productstatisticblock.html.php @@ -124,7 +124,7 @@ $(function()
-
story->total;?>
+
conceptName;?>
stories):?>
stories);?>
id}&branch=&type=allstory", $lang->story->viewAll . '', '', 'class="btn btn-primary btn-circle btn-icon-right btn-sm"');?> diff --git a/module/block/view/programblock.html.php b/module/block/view/programblock.html.php new file mode 100644 index 0000000000..efd59247a7 --- /dev/null +++ b/module/block/view/programblock.html.php @@ -0,0 +1,49 @@ + +
block->emptyTip;?>
+ + +
+ '> + + + + + + + + + + + + + + + + + + createLink('program', 'index', "programID={$program->id}"); + ?> + + + + + + + + + + + + + + + +
program->PGMName;?> program->PGMPM;?>program->PGMStatus;?>program->teamCount;?>task->consumed;?>program->PGMBudget;?>program->leftStories;?>program->leftTasks;?>program->leftBugs;?>
name);?>PM, $program->PM)?> + project->statusList, $program->status);?> + teamCount;?>consumed;?>budget . ' ' . zget($lang->program->unitList, $program->budgetUnit);?>leftStories;?>leftTasks;?>leftBugs;?>
+
+ diff --git a/module/block/view/projectdynamicblock.html.php b/module/block/view/programdynamicblock.html.php similarity index 100% rename from module/block/view/projectdynamicblock.html.php rename to module/block/view/programdynamicblock.html.php diff --git a/module/block/view/executionstatisticblock.html.php b/module/block/view/programstatisticblock.html.php similarity index 52% rename from module/block/view/executionstatisticblock.html.php rename to module/block/view/programstatisticblock.html.php index 6e0a5b4174..ab6fc2877f 100644 --- a/module/block/view/executionstatisticblock.html.php +++ b/module/block/view/programstatisticblock.html.php @@ -55,9 +55,21 @@ html[lang="en"] .product-info .type-info {color: #A6AAB8; text-align: center; po .block-statistic.block-sm .nav-secondary > li.active > a.btn-view {width: auto; left: 0; right: 0;} .block-statistic.block-sm .nav-secondary > li.active > a.btn-view > i {display: none;} .block-statistic.block-sm .nav-secondary > li.active > a.btn-view:hover {cursor: pointer; background: rgba(0,0,0,.1)} +.block-statistic .program-info .info span+span{margin-left: 15px} +.block-statistic .project-info{margin-top: 25px} +.block-statistic .project-info .col-xs-5, .block-statistic .project-info .col-xs-7{margin-top: 8px} +.block-statistic .project-info .col-xs-5{padding-left: 0px;} .status-count{margin:auto} .status-count tr:first-child td:last-child{color:#000;font-weight:bold} + +.block-statistic .progress-group{margin-top: 20px; margin-bottom: 10px; height: 65px;} +.block-statistic .weekly-title{font-weight: bold; font-size:14px; color: #3C4253;} +.block-statistic .weekly-small{font-size:12px; color: #838A9D;} +.block-statistic .weekly-progress {font-weight: bold; font-size:24px;} +.block-statistic .weekly-name{font-size:14px; color: #838A9D;} +.block-statistic .weekly-value{font-size:14px;} +.block-statistic .col-6 .stage{margin-left: 10px}
- +

block->noData;?>

@@ -92,110 +104,139 @@ $(function()
- -
+ +
+ model == 'scrum'):?>
-
+
- task->statusList['done'];?> - progress;?>percent;?> + story->common . $lang->program->doneStories;?> + doneStories;?>
-
project->totalEstimate;?>
-
totalEstimate;?> task->hour;?>
+
program->allStories;?>
+
allStories;?>
-
project->totalConsumed;?>
-
totalConsumed;?> task->hour;?>
+
program->doneStories;?>
+
doneStories;?>
-
project->totalLeft;?>
-
totalLeft;?> task->hour;?>
+
program->leftStories;?>
+
leftStories;?>
-
-
task->yesterdayFinished;?> yesterdayFinished;?>
-
-
-
-
-
-
- - - - - - - - - -
task->allTasks;?> :totalTasks) ? 0 : html::a($this->createLink('project', 'task', "executionID={$execution->id}&status=all"), $execution->totalTasks);?>
task->noFinished;?> :undoneTasks) ? 0 : html::a($this->createLink('project', 'task', "executionID={$execution->id}&status=undone"), $execution->undoneTasks);?>
-
+
+

program->allInput;?>

+
+ program->membersUnit, $project->teamCount);?> + program->hoursUnit, $project->estimate);?> + budget . ' ' . zget($lang->program->unitList, $project->budgetUnit);?>
-
-
story->released;?> releasedStories;?>
-
-
-
-
-
- - - - - - - - - -
story->total;?> :totalStories) ? 0 : html::a($this->createLink('project', 'story', "executionID={$execution->id}&orderBy=order_desc&type=all"), $execution->totalStories);?>
story->unclosed;?> :unclosedStories) ? 0 : html::a($this->createLink('project', 'story', "executionID={$execution->id}&orderBy=order_desc&type=unclosed"), $execution->unclosedStories);?>
+
+ +

program->lastIteration;?>

+ executions as $execution):?> + + 3) break;?> +
name;?>
+
+
+
+ hours->progress . '%';?> +
+ +
+
+ +
+
+ program->weekly;?> + current;?> +
+
+
+
program->PRJProgress;?>
+
progress . '%';?>
+
+
+
+
-
-
bug->yesterdayResolved;?> yesterdayResolved;?>
-
-
-
+
+
+
program->pv;?>
+
pv;?>
-
-
- - - - - - - - - -
bug->allBugs;?> :totalBugs) ? 0 : html::a($this->createLink('project', 'bug', "executionID={$execution->id}&orderBy=status,id_desc&build=0&type=all"), $execution->totalBugs);?>
bug->unResolved;?> :activeBugs) ? 0 : html::a($this->createLink('project', 'bug', "executionID={$execution->id}&orderBy=status,id_desc&build=0&type=unresolved"), $execution->activeBugs);?>
-
+
+
program->ev;?>
+
ev;?>
+
+
+
program->sv;?>
+
sv;?>
+
+
+
+ program->allInput;?> +
+
+
+
+
+
+
program->PRJPM;?>
+
PM ? zget($users, $project->PM) : $lang->program->emptyPM;?>
+
+
+
program->teamCount;?>
+
teamCount;?>
+
+
+
program->PRJBudget;?>
+
budget;?>
+
+
+
+
+
+
program->ac;?>
+
ac;?>
+
+
+
program->cv;?>
+
cv;?>
+
+
+
+
+
+
diff --git a/module/block/view/projectblock.html.php b/module/block/view/projectblock.html.php index efd59247a7..df642f9424 100644 --- a/module/block/view/projectblock.html.php +++ b/module/block/view/projectblock.html.php @@ -1,48 +1,72 @@ - -
block->emptyTip;?>
+ + * @package block + * @version $Id$ + * @link http://www.zentao.net + */ +?> + +
" . $lang->project->create, '', "class='btn btn-primary'")?>
- -
- '> +
+
- - - - + + + - - - - - - + + + + + + + + + - - + + + createLink('program', 'index', "programID={$program->id}"); + $appid = isset($_GET['entry']) ? "class='app-btn text-center' data-id='{$this->get->entry}'" : "class='text-center'"; + $viewLink = $this->createLink('project', 'task', 'project=' . $execution->id); ?> - - - - > + + + + + + + + + - - - - - - + - - + +
program->PGMName;?> program->PGMPM;?>program->PGMStatus;?>
project->name;?>project->end;?> program->teamCount;?>task->consumed;?>program->PGMBudget;?>program->leftStories;?>program->leftTasks;?>program->leftBugs;?>statusAB;?>project->totalEstimate;?>project->totalConsumed;?>project->totalLeft;?>project->progress;?>project->burn;?>
name);?>PM, $program->PM)?> - project->statusList, $program->status);?> +
createLink('project', 'task', 'project=' . $execution->id), $execution->name, '', "title='$execution->name'");?>end;?> + delay)):?> + project->delayed;?> + + processStatus('project', $execution);?> + + + hours->totalEstimate;?>hours->totalConsumed;?>hours->totalLeft;?> +
+
+ hours->progress;?>% +
+
teamCount;?>consumed;?>budget . ' ' . zget($lang->program->unitList, $program->budgetUnit);?>leftStories;?>leftTasks;?>leftBugs;?>burns);?>'>
diff --git a/module/block/view/executionoverviewblock.html.php b/module/block/view/projectoverviewblock.html.php similarity index 100% rename from module/block/view/executionoverviewblock.html.php rename to module/block/view/projectoverviewblock.html.php diff --git a/module/block/view/projectstatisticblock.html.php b/module/block/view/projectstatisticblock.html.php index ab6fc2877f..6e0a5b4174 100644 --- a/module/block/view/projectstatisticblock.html.php +++ b/module/block/view/projectstatisticblock.html.php @@ -55,21 +55,9 @@ html[lang="en"] .product-info .type-info {color: #A6AAB8; text-align: center; po .block-statistic.block-sm .nav-secondary > li.active > a.btn-view {width: auto; left: 0; right: 0;} .block-statistic.block-sm .nav-secondary > li.active > a.btn-view > i {display: none;} .block-statistic.block-sm .nav-secondary > li.active > a.btn-view:hover {cursor: pointer; background: rgba(0,0,0,.1)} -.block-statistic .program-info .info span+span{margin-left: 15px} -.block-statistic .project-info{margin-top: 25px} -.block-statistic .project-info .col-xs-5, .block-statistic .project-info .col-xs-7{margin-top: 8px} -.block-statistic .project-info .col-xs-5{padding-left: 0px;} .status-count{margin:auto} .status-count tr:first-child td:last-child{color:#000;font-weight:bold} - -.block-statistic .progress-group{margin-top: 20px; margin-bottom: 10px; height: 65px;} -.block-statistic .weekly-title{font-weight: bold; font-size:14px; color: #3C4253;} -.block-statistic .weekly-small{font-size:12px; color: #838A9D;} -.block-statistic .weekly-progress {font-weight: bold; font-size:24px;} -.block-statistic .weekly-name{font-size:14px; color: #838A9D;} -.block-statistic .weekly-value{font-size:14px;} -.block-statistic .col-6 .stage{margin-left: 10px}
- +

block->noData;?>

@@ -104,139 +92,110 @@ $(function()
- -
+ +
- model == 'scrum'):?>
-
+
- story->common . $lang->program->doneStories;?> - doneStories;?> + task->statusList['done'];?> + progress;?>percent;?>
-
program->allStories;?>
-
allStories;?>
+
project->totalEstimate;?>
+
totalEstimate;?> task->hour;?>
-
program->doneStories;?>
-
doneStories;?>
+
project->totalConsumed;?>
+
totalConsumed;?> task->hour;?>
-
program->leftStories;?>
-
leftStories;?>
+
project->totalLeft;?>
+
totalLeft;?> task->hour;?>
-
-

program->allInput;?>

-
- program->membersUnit, $project->teamCount);?> - program->hoursUnit, $project->estimate);?> - budget . ' ' . zget($lang->program->unitList, $project->budgetUnit);?> -
-
-
- -

program->lastIteration;?>

- executions as $execution):?> - - 3) break;?> -
name;?>
-
-
-
- hours->progress . '%';?> -
+
+
task->yesterdayFinished;?> yesterdayFinished;?>
+
+
- -
-
- -
-
- program->weekly;?> - current;?> -
-
-
-
program->PRJProgress;?>
-
progress . '%';?>
-
-
-
+
+
+ + + + + + + + + +
task->allTasks;?> :totalTasks) ? 0 : html::a($this->createLink('project', 'task', "executionID={$execution->id}&status=all"), $execution->totalTasks);?>
task->noFinished;?> :undoneTasks) ? 0 : html::a($this->createLink('project', 'task', "executionID={$execution->id}&status=undone"), $execution->undoneTasks);?>
+
-
-
-
program->pv;?>
-
pv;?>
+
+
story->released;?> releasedStories;?>
+
+
-
-
program->ev;?>
-
ev;?>
+
+
+ + + + + + + + + +
story->total;?> :totalStories) ? 0 : html::a($this->createLink('project', 'story', "executionID={$execution->id}&orderBy=order_desc&type=all"), $execution->totalStories);?>
story->unclosed;?> :unclosedStories) ? 0 : html::a($this->createLink('project', 'story', "executionID={$execution->id}&orderBy=order_desc&type=unclosed"), $execution->unclosedStories);?>
+
-
-
program->sv;?>
-
sv;?>
+
+
+
bug->yesterdayResolved;?> yesterdayResolved;?>
+
+
+
+
+
+
+ + + + + + + + + +
bug->allBugs;?> :totalBugs) ? 0 : html::a($this->createLink('project', 'bug', "executionID={$execution->id}&orderBy=status,id_desc&build=0&type=all"), $execution->totalBugs);?>
bug->unResolved;?> :activeBugs) ? 0 : html::a($this->createLink('project', 'bug', "executionID={$execution->id}&orderBy=status,id_desc&build=0&type=unresolved"), $execution->activeBugs);?>
+
-
-
-
- program->allInput;?> -
-
-
-
-
-
-
program->PRJPM;?>
-
PM ? zget($users, $project->PM) : $lang->program->emptyPM;?>
-
-
-
program->teamCount;?>
-
teamCount;?>
-
-
-
program->PRJBudget;?>
-
budget;?>
-
-
-
-
-
-
program->ac;?>
-
ac;?>
-
-
-
program->cv;?>
-
cv;?>
-
-
-
-
-
-
diff --git a/module/block/view/recentprojectblock.html.php b/module/block/view/recentprogramblock.html.php similarity index 99% rename from module/block/view/recentprojectblock.html.php rename to module/block/view/recentprogramblock.html.php index 649a5e0833..159a003b7a 100644 --- a/module/block/view/recentprojectblock.html.php +++ b/module/block/view/recentprogramblock.html.php @@ -116,7 +116,7 @@