diff --git a/VERSION b/VERSION
index c9dc140c4d..deeb756414 100644
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-20.0.beta3
+20.0.beta4
diff --git a/config/config.php b/config/config.php
index c864cf0875..6b8f39d7b3 100644
--- a/config/config.php
+++ b/config/config.php
@@ -16,7 +16,7 @@ if(!class_exists('config')){class config{}}
if(!function_exists('getWebRoot')){function getWebRoot(){}}
/* 基本设置。Basic settings. */
-$config->version = '20.0.beta3'; // ZenTaoPHP的版本。 The version of ZenTaoPHP. Don't change it.
+$config->version = '20.0.beta4'; // ZenTaoPHP的版本。 The version of ZenTaoPHP. Don't change it.
$config->charset = 'UTF-8'; // ZenTaoPHP的编码。 The encoding of ZenTaoPHP.
$config->cookieLife = time() + 2592000; // Cookie的生存时间。The cookie life time.
$config->timezone = 'Asia/Shanghai'; // 时区设置。 The time zone setting, for more see http://www.php.net/manual/en/timezones.php.
diff --git a/config/filter.php b/config/filter.php
index 184c7ef70e..ef1128f6e9 100644
--- a/config/filter.php
+++ b/config/filter.php
@@ -52,67 +52,77 @@ $filter->repo = new stdclass();
$filter->webhook = new stdclass();
$filter->git = new stdclass();
$filter->svn = new stdclass();
+$filter->search = new stdclass();
-$filter->block->default = new stdclass();
-$filter->block->main = new stdclass();
-$filter->bug->batchcreate = new stdclass();
-$filter->bug->browse = new stdclass();
-$filter->bug->default = new stdclass();
-$filter->bug->create = new stdclass();
-$filter->bug->export = new stdclass();
-$filter->caselib->create = new stdclass();
-$filter->doc->create = new stdclass();
-$filter->doc->browse = new stdclass();
-$filter->doc->alllibs = new stdclass();
-$filter->doc->objectlibs = new stdclass();
-$filter->doc->showfiles = new stdclass();
-$filter->doc->default = new stdclass();
-$filter->doc->showfiles = new stdclass();
-$filter->mail->ztcloud = new stdclass();
-$filter->mail->batchdelete = new stdclass();
-$filter->misc->checkupdate = new stdclass();
-$filter->file->download = new stdclass();
-$filter->product->browse = new stdclass();
-$filter->product->default = new stdclass();
-$filter->product->index = new stdclass();
-$filter->program->default = new stdclass();
-$filter->product->export = new stdclass();
-$filter->project->default = new stdclass();
-$filter->project->story = new stdclass();
-$filter->project->export = new stdclass();
-$filter->project->task = new stdclass();
-$filter->qa->default = new stdclass();
-$filter->story->create = new stdclass();
-$filter->story->export = new stdclass();
-$filter->sso->getbindusers = new stdclass();
-$filter->sso->gettodolist = new stdclass();
-$filter->sso->getuserpairs = new stdclass();
-$filter->sso->login = new stdclass();
-$filter->sso->logout = new stdclass();
-$filter->git->cat = new stdclass();
-$filter->git->diff = new stdclass();
-$filter->svn->cat = new stdclass();
-$filter->svn->diff = new stdclass();
-$filter->task->create = new stdclass();
-$filter->task->export = new stdclass();
-$filter->testcase->default = new stdclass();
-$filter->testcase->create = new stdclass();
-$filter->testcase->browse = new stdclass();
-$filter->testcase->export = new stdclass();
-$filter->testcase->groupcase = new stdclass();
-$filter->testreport->default = new stdclass();
-$filter->testsuite->default = new stdclass();
-$filter->testsuite->library = new stdclass();
-$filter->testtask->default = new stdclass();
-$filter->testtask->browse = new stdclass();
-$filter->testtask->cases = new stdclass();
-$filter->todo->export = new stdclass();
-$filter->upgrade->license = new stdclass();
-$filter->user->login = new stdclass();
-$filter->user->edit = new stdclass();
-$filter->webhook->bind = new stdclass();
-$filter->user->ajaxgetmore = new stdclass();
-$filter->repo->ajaxsynccommit = new stdclass();
+$filter->block->default = new stdclass();
+$filter->block->main = new stdclass();
+$filter->bug->batchcreate = new stdclass();
+$filter->bug->browse = new stdclass();
+$filter->bug->default = new stdclass();
+$filter->bug->create = new stdclass();
+$filter->bug->export = new stdclass();
+$filter->caselib->create = new stdclass();
+$filter->doc->create = new stdclass();
+$filter->doc->browse = new stdclass();
+$filter->doc->alllibs = new stdclass();
+$filter->doc->objectlibs = new stdclass();
+$filter->doc->showfiles = new stdclass();
+$filter->doc->default = new stdclass();
+$filter->doc->showfiles = new stdclass();
+$filter->mail->ztcloud = new stdclass();
+$filter->mail->batchdelete = new stdclass();
+$filter->misc->checkupdate = new stdclass();
+$filter->file->download = new stdclass();
+$filter->product->browse = new stdclass();
+$filter->product->default = new stdclass();
+$filter->product->index = new stdclass();
+$filter->program->default = new stdclass();
+$filter->program->prjbrowse = new stdclass();
+$filter->program->pgmproject = new stdclass();
+$filter->program->prjbrowse = new stdclass();
+$filter->program->pgmbrowse = new stdclass();
+$filter->program->export = new stdclass();
+$filter->program->ajaxgetpgmdropmenu = new stdclass();
+$filter->product->export = new stdclass();
+$filter->product->project = new stdclass();
+$filter->project->default = new stdclass();
+$filter->project->story = new stdclass();
+$filter->project->export = new stdclass();
+$filter->project->task = new stdclass();
+$filter->qa->default = new stdclass();
+$filter->story->create = new stdclass();
+$filter->story->export = new stdclass();
+$filter->story->batchcreate = new stdclass();
+$filter->sso->getbindusers = new stdclass();
+$filter->sso->gettodolist = new stdclass();
+$filter->sso->getuserpairs = new stdclass();
+$filter->sso->login = new stdclass();
+$filter->sso->logout = new stdclass();
+$filter->git->cat = new stdclass();
+$filter->git->diff = new stdclass();
+$filter->svn->cat = new stdclass();
+$filter->svn->diff = new stdclass();
+$filter->task->create = new stdclass();
+$filter->task->export = new stdclass();
+$filter->testcase->default = new stdclass();
+$filter->testcase->create = new stdclass();
+$filter->testcase->browse = new stdclass();
+$filter->testcase->export = new stdclass();
+$filter->testcase->groupcase = new stdclass();
+$filter->testreport->default = new stdclass();
+$filter->testsuite->default = new stdclass();
+$filter->testsuite->library = new stdclass();
+$filter->testtask->default = new stdclass();
+$filter->testtask->browse = new stdclass();
+$filter->testtask->cases = new stdclass();
+$filter->todo->export = new stdclass();
+$filter->upgrade->license = new stdclass();
+$filter->user->login = new stdclass();
+$filter->user->edit = new stdclass();
+$filter->webhook->bind = new stdclass();
+$filter->user->ajaxgetmore = new stdclass();
+$filter->repo->ajaxsynccommit = new stdclass();
+$filter->search->index = new stdclass();
$filter->bug->batchcreate->cookie['preBranch'] = 'int';
$filter->bug->browse->cookie['bugModule'] = 'int';
diff --git a/module/action/lang/de.php b/module/action/lang/de.php
index 6ed20841f5..a75f599f60 100644
--- a/module/action/lang/de.php
+++ b/module/action/lang/de.php
@@ -437,6 +437,7 @@ $lang->action->label->design = 'Design|design|view|designID=%s';
$lang->action->label->stakeholder = 'Stakeholder|stakeholder|view|userID=%s';
/* Object type. */
+$lang->action->search = new stdclass();
$lang->action->search->objectTypeList[''] = '';
$lang->action->search->objectTypeList['product'] = $lang->productCommon;
$lang->action->search->objectTypeList['program'] = 'Program';
diff --git a/module/action/lang/en.php b/module/action/lang/en.php
index dba149546e..ca9103fd9d 100755
--- a/module/action/lang/en.php
+++ b/module/action/lang/en.php
@@ -437,6 +437,7 @@ $lang->action->label->design = 'Design|design|view|designID=%s';
$lang->action->label->stakeholder = 'Stakeholder|stakeholder|view|userID=%s';
/* Object type. */
+$lang->action->search = new stdclass();
$lang->action->search->objectTypeList[''] = '';
$lang->action->search->objectTypeList['product'] = $lang->productCommon;
$lang->action->search->objectTypeList['program'] = 'Program';
diff --git a/module/action/lang/fr.php b/module/action/lang/fr.php
index 9bb1d15e78..0cfaf66765 100644
--- a/module/action/lang/fr.php
+++ b/module/action/lang/fr.php
@@ -437,6 +437,7 @@ $lang->action->label->design = 'Design|design|view|designID=%s';
$lang->action->label->stakeholder = 'Stakeholder|stakeholder|view|userID=%s';
/* Object type. */
+$lang->action->search = new stdclass();
$lang->action->search->objectTypeList[''] = '';
$lang->action->search->objectTypeList['product'] = $lang->productCommon;
$lang->action->search->objectTypeList['program'] = 'Program';
diff --git a/module/action/lang/vi.php b/module/action/lang/vi.php
index 17388f822a..6171a61246 100644
--- a/module/action/lang/vi.php
+++ b/module/action/lang/vi.php
@@ -437,6 +437,7 @@ $lang->action->label->design = 'Design|design|view|designID=%s';
$lang->action->label->stakeholder = 'Stakeholder|stakeholder|view|userID=%s';
/* Object type. */
+$lang->action->search = new stdclass();
$lang->action->search->objectTypeList[''] = '';
$lang->action->search->objectTypeList['product'] = $lang->productCommon;
$lang->action->search->objectTypeList['program'] = 'Program';
diff --git a/module/action/lang/zh-cn.php b/module/action/lang/zh-cn.php
index def7c07de0..9f2f5a95bd 100755
--- a/module/action/lang/zh-cn.php
+++ b/module/action/lang/zh-cn.php
@@ -437,6 +437,7 @@ $lang->action->label->design = '设计|design|view|designID=%s';
$lang->action->label->stakeholder = '干系人|stakeholder|view|userID=%s';
/* Object type. */
+$lang->action->search = new stdclass();
$lang->action->search->objectTypeList[''] = '';
$lang->action->search->objectTypeList['product'] = $lang->productCommon;
$lang->action->search->objectTypeList['program'] = '项目集';
diff --git a/module/action/lang/zh-tw.php b/module/action/lang/zh-tw.php
index 76333a5576..ffb0fe3dd8 100755
--- a/module/action/lang/zh-tw.php
+++ b/module/action/lang/zh-tw.php
@@ -197,6 +197,8 @@ $lang->action->label->changestatus = '修改狀態';
$lang->action->label->marked = '編輯了';
$lang->action->label->linked2project = "關聯{$lang->executionCommon}";
$lang->action->label->unlinkedfromproject = "移除{$lang->executionCommon}";
+$lang->action->label->linked2prj = "關聯項目";
+$lang->action->label->unlinkedfromprj = "移除項目";
$lang->action->label->unlinkedfrombuild = "移除版本";
$lang->action->label->linked2release = "關聯發佈";
$lang->action->label->unlinkedfromrelease = "移除發佈";
@@ -435,6 +437,7 @@ $lang->action->label->design = '設計|design|view|designID=%s';
$lang->action->label->stakeholder = '干係人|stakeholder|view|userID=%s';
/* Object type. */
+$lang->action->search = new stdclass();
$lang->action->search->objectTypeList[''] = '';
$lang->action->search->objectTypeList['product'] = $lang->productCommon;
$lang->action->search->objectTypeList['program'] = '項目集';
@@ -492,6 +495,8 @@ $lang->action->search->label['changestatus'] = $lang->action->label->chan
$lang->action->search->label['marked'] = $lang->action->label->marked;
$lang->action->search->label['linked2project'] = $lang->action->label->linked2project;
$lang->action->search->label['unlinkedfromproject'] = $lang->action->label->unlinkedfromproject;
+$lang->action->search->label['linked2prj'] = $lang->action->label->linked2prj;
+$lang->action->search->label['unlinkedfromprj'] = $lang->action->label->unlinkedfromprj;
$lang->action->search->label['started'] = $lang->action->label->started;
$lang->action->search->label['restarted'] = $lang->action->label->restarted;
$lang->action->search->label['recordestimate'] = $lang->action->label->recordestimate;
diff --git a/module/block/lang/zh-tw.php b/module/block/lang/zh-tw.php
index 07da12db2d..c0543e1f8e 100644
--- a/module/block/lang/zh-tw.php
+++ b/module/block/lang/zh-tw.php
@@ -48,8 +48,8 @@ $lang->block->delayed = '已延期';
$lang->block->noData = '當前統計類型下暫無數據';
$lang->block->emptyTip = '暫無信息';
$lang->block->createdTodos = '創建的待辦數';
-$lang->block->createdRequirements = '創建的' . $lang->generalUR . '數';
-$lang->block->createdStories = '創建的' . $lang->generalSR . '數';
+$lang->block->createdRequirements = '創建的' . $lang->URCommon . '數';
+$lang->block->createdStories = '創建的' . $lang->SRCommon . '數';
$lang->block->finishedTasks = '完成的任務數';
$lang->block->createdBugs = '提交的Bug數';
$lang->block->resolvedBugs = '解決的Bug數';
@@ -62,7 +62,7 @@ $lang->block->createdDocs = '創建的文檔數';
$lang->block->allProject = '所有' . $lang->executionCommon;
$lang->block->doingProject = '進行中的' . $lang->executionCommon;
$lang->block->finishProject = '累積' . $lang->executionCommon;
-$lang->block->estimatedHours = '預計工時';
+$lang->block->estimatedHours = '預計';
$lang->block->consumedHours = '已消耗';
$lang->block->time = '第';
$lang->block->week = '周';
diff --git a/module/bug/lang/zh-tw.php b/module/bug/lang/zh-tw.php
index e24a9ca45f..deca960831 100644
--- a/module/bug/lang/zh-tw.php
+++ b/module/bug/lang/zh-tw.php
@@ -14,7 +14,7 @@ $lang->bug->common = 'Bug';
$lang->bug->id = 'Bug編號';
$lang->bug->product = '所屬' . $lang->productCommon;
$lang->bug->branch = '分支/平台';
-$lang->bug->productplan = '所屬計劃';
+$lang->bug->productplan = '所屬' . '計劃';
$lang->bug->module = '所屬模組';
$lang->bug->moduleAB = '模組';
$lang->bug->project = '所屬' . $lang->executionCommon;
@@ -58,7 +58,7 @@ $lang->bug->resolvedBuild = '解決版本';
$lang->bug->resolvedDate = '解決日期';
$lang->bug->resolvedDateAB = '解決日期';
$lang->bug->deadline = '截止日期';
-$lang->bug->plan = '所屬計劃';
+$lang->bug->plan = '所屬' . '計劃';
$lang->bug->closedBy = '由誰關閉';
$lang->bug->closedDate = '關閉日期';
$lang->bug->duplicateBug = '重複ID';
diff --git a/module/build/lang/zh-tw.php b/module/build/lang/zh-tw.php
index b12242f6cf..2c09e5bf8f 100644
--- a/module/build/lang/zh-tw.php
+++ b/module/build/lang/zh-tw.php
@@ -49,7 +49,7 @@ $lang->build->noProduct = " 該{$lang->executionComm
$lang->build->noBuild = '暫時沒有版本。';
$lang->build->notice = new stdclass();
-$lang->build->notice->changeProduct = "已經關聯{$lang->SRCommon}或Bug的版本,不能修改其所屬產品";
+$lang->build->notice->changeProduct = "已經關聯{$lang->SRCommon}、Bug或提交測試單的版本,不能修改其所屬{$lang->productCommon}";
$lang->build->notice->changeProject = "提交測試單的版本,不能修改其所屬{$lang->executionCommon}";
$lang->build->finishStories = " 本次共完成 %s 個{$lang->SRCommon}";
diff --git a/module/common/lang/zh-tw.php b/module/common/lang/zh-tw.php
index cb2896cecd..64b90578c7 100644
--- a/module/common/lang/zh-tw.php
+++ b/module/common/lang/zh-tw.php
@@ -6,7 +6,7 @@
* @license ZPL (http://zpl.pub/page/zplv12.html)
* @author Chunsheng Wang
* @package ZenTaoPMS
- * @version $Id: zh-cn.php 5116 2013-07-12 06:37:48Z chencongzhi520@gmail.com $
+ * @version $Id: zh-tw.php 5116 2013-07-12 06:37:48Z chencongzhi520@gmail.com $
* @link http://www.zentao.net
*/
$lang->arrow = ' ';
@@ -29,9 +29,12 @@ $lang->help = '幫助';
$lang->aboutZenTao = '關於禪道';
$lang->profile = '個人檔案';
$lang->changePassword = '修改密碼';
+$lang->unfoldMenu = '展開導航';
+$lang->collapseMenu = '收起導航';
+$lang->preference = '個性化設置';
$lang->runInfo = "時間: %s 毫秒, 內存: %s KB, 查詢: %s.
";
$lang->agreement = "已閲讀並同意《Z PUBLIC LICENSE授權協議1.2》。未經許可,不得去除、隱藏或遮掩禪道軟件的任何標誌及連結。";
-$lang->designedByAIUX = "Designed by 艾體驗";
+$lang->designedByAIUX = " 艾體驗設計";
$lang->reset = '重填';
$lang->cancel = '取消';
@@ -51,6 +54,7 @@ $lang->preview = '查看';
$lang->goback = '返回';
$lang->goPC = 'PC版';
$lang->more = '更多';
+$lang->moreLink = 'More';
$lang->day = '天';
$lang->customConfig = '自定義';
$lang->public = '公共';
@@ -116,6 +120,8 @@ $lang->sprintCommon = '迭代/階段';
$lang->execution = new stdclass();
$lang->execution->common = '執行';
+$lang->execution->sprint = '迭代';
+$lang->execution->stage = '階段';
$lang->idAB = 'ID';
$lang->priAB = 'P';
@@ -127,12 +133,17 @@ $lang->typeAB = '類型';
$lang->common = new stdclass();
$lang->common->common = '公有模組';
+global $config;
+list($programModule, $programMethod) = explode('-', $config->programLink);
+list($productModule, $productMethod) = explode('-', $config->productLink);
+list($projectModule, $projectMethod) = explode('-', $config->projectLink);
+
/* 主導航菜單。*/
$lang->mainNav = new stdclass();
$lang->mainNav->my = ' 地盤|my|index|';
-$lang->mainNav->program = ' 項目集|program|pgmproduct|';
-$lang->mainNav->product = ' 產品|product|browse|';
-$lang->mainNav->project = ' 項目|program|index|';
+$lang->mainNav->program = " 項目集|$programModule|$programMethod|";
+$lang->mainNav->product = " 產品|$productModule|$productMethod|";
+$lang->mainNav->project = " 項目|$projectModule|$projectMethod|";
$lang->mainNav->repo = ' 代碼|repo|browse|';
$lang->mainNav->doc = ' 文檔|doc|index|';
$lang->mainNav->system = ' 組織|subject|browse|';
@@ -145,7 +156,11 @@ $lang->dividerMenu = ',project,doc,';
$lang->program = new stdclass();
$lang->program->menu = new stdclass();
//$lang->program->menu->index = '主頁|program|pgmindex|';
-$lang->program->menu->browse = array('link' => '項目集|program|pgmbrowse|', 'alias' => 'pgmcreate,pgmedit,pgmgroup,pgmmanagepriv,pgmmanageview,pgmmanagemembers');
+$lang->program->menu->browse = array('link' => '項目集|program|pgmbrowse|', 'alias' => 'pgmcreate,pgmedit,pgmgroup,pgmmanagepriv,pgmmanageview,pgmmanagemembers,prjcreate,prjedit,prjmanageproducts,prjwhitelist,prjaddwhitelist');
+
+$lang->PRJ = new stdclass();
+$lang->PRJ->menu = new stdclass();
+$lang->PRJ->menu->browse = array('link' => '項目|program|prjbrowse|', 'alias' => 'prjcreate,prjedit,prjgroup,prjmanagepriv,prjmanageview,prjmanagemembers,prjmanageproducts,prjwhitelist,prjaddwhitelist');
$lang->program->viewMenu = new stdclass();
$lang->program->viewMenu->product = array('link' => '產品|program|pgmproduct|program=%s', 'alias' => 'view');
@@ -197,11 +212,11 @@ $lang->system = new stdclass();
$lang->system->menu = new stdclass();
$lang->system->menu->company = array('link' => '全局設置|subject|browse|', 'subModule' => 'holiday');
$lang->system->menu->scrum = array('link' => '敏捷模型|custom|configurescrum|');
-$lang->system->menu->waterfall = array('link' => '瀑布模型|stage|settype|');
+$lang->system->menu->waterfall = array('link' => '瀑布模型|stage|settype|', 'alias' => 'browse');
$lang->subject = new stdclass();
$lang->subject->menu = new stdclass();
-$lang->subject->menu->subject = array('link' => '科目|subject|browse|');
+$lang->subject->menu->subject = array('link' => '支出科目|subject|browse|');
$lang->subject->menu->holiday = array('link' => '節假日|holiday|browse|');
$lang->subject->menu->concept = array('link' => '需求概念|custom|browsestoryconcept|');
$lang->subject->menu->estimate = array('link' => '估算|custom|estimate');
@@ -212,9 +227,13 @@ $lang->holiday->menu = $lang->subject->menu;
$lang->measurement = new stdclass();
$lang->measurement->menu = new stdclass();
-/* 查詢條中可以選擇的對象列表。*/
+$lang->searchTips = '';
+$lang->searchAB = '搜索';
+
+/* 查詢中可以選擇的對象列表。*/
+$lang->searchObjects['all'] = '全部';
$lang->searchObjects['bug'] = 'Bug';
-$lang->searchObjects['story'] = "{$lang->SRCommon}";
+$lang->searchObjects['story'] = '需求';
$lang->searchObjects['task'] = '任務';
$lang->searchObjects['testcase'] = '用例';
$lang->searchObjects['product'] = $lang->productCommon;
@@ -227,7 +246,10 @@ $lang->searchObjects['caselib'] = '用例庫';
$lang->searchObjects['testreport'] = '測試報告';
$lang->searchObjects['program'] = '項目集';
$lang->searchObjects['project'] = '項目';
-$lang->searchObjects['execution'] = $lang->sprintCommon;
+$lang->searchObjects['execution'] = $lang->execution->common;
+$lang->searchObjects['user'] = '用戶';
+$lang->searchObjects['issue'] = '問題';
+$lang->searchObjects['risk'] = '風險';
$lang->searchTips = '編號(ctrl+g)';
/* 導入支持的編碼格式。*/
@@ -274,24 +296,27 @@ $lang->my->menu->myProject = array('link' => '項目|my|project|');
$lang->my->menu->myExecution = '執行|my|execution|type=undone';
$lang->my->menu->contribute = array('link' => '貢獻|my|contribute|mode=task');
$lang->my->menu->dynamic = '動態|my|dynamic|';
-$lang->my->menu->score = '積分|my|score|';
+$lang->my->menu->score = array('link' => '積分|my|score|', 'subModule' => 'score');
+$lang->my->menu->team = array('link' => '團隊|my|team|', 'subModule' => 'user');
$lang->my->menu->contacts = '聯繫人|my|managecontacts|';
$lang->my->workMenu = new stdclass();
$lang->my->workMenu->task = '任務|my|work|mode=task';
-$lang->my->workMenu->story = "$lang->SRCommon|my|work|mode=story";
$lang->my->workMenu->requirement = "$lang->URCommon|my|work|mode=requirement";
+$lang->my->workMenu->story = "$lang->SRCommon|my|work|mode=story";
$lang->my->workMenu->bug = 'Bug|my|work|mode=bug';
-$lang->my->workMenu->testtask = '測試|my|work|mode=testtask&type=wait';
+$lang->my->workMenu->testcase = '用例|my|work|mode=testcase&type=assigntome';
+$lang->my->workMenu->testtask = '測試單|my|work|mode=testtask&type=wait';
$lang->my->workMenu->issue = '問題|my|work|mode=issue';
$lang->my->workMenu->risk = '風險|my|work|mode=risk';
$lang->my->contributeMenu = new stdclass();
$lang->my->contributeMenu->task = '任務|my|contribute|mode=task';
-$lang->my->contributeMenu->story = "$lang->SRCommon|my|contribute|mode=story";
$lang->my->contributeMenu->requirement = "$lang->URCommon|my|contribute|mode=requirement";
+$lang->my->contributeMenu->story = "$lang->SRCommon|my|contribute|mode=story";
$lang->my->contributeMenu->bug = 'Bug|my|contribute|mode=bug';
-$lang->my->contributeMenu->testtask = '用例|my|contribute|mode=testtask&type=done';
+$lang->my->contributeMenu->testcase = '用例|my|contribute|mode=testcase&type=openedbyme';
+$lang->my->contributeMenu->testtask = '測試單|my|contribute|mode=testtask&type=done';
$lang->my->contributeMenu->issue = '問題|my|contribute|mode=issue';
$lang->my->contributeMenu->risk = '風險|my|contribute|mode=risk';
@@ -327,21 +352,18 @@ $lang->story->menu = $lang->product->menu;
$lang->project = new stdclass();
$lang->project->menu = new stdclass();
-$lang->project->menu->task = array('link' => '任務|project|task|projectID=%s', 'subModule' => 'task,tree', 'alias' => 'importtask,importbug');
-$lang->project->menu->kanban = array('link' => '看板|project|kanban|projectID=%s');
-$lang->project->menu->burn = array('link' => '燃盡圖|project|burn|projectID=%s');
-$lang->project->menu->view = array('link' => '视图|project|grouptask|projectID=%s', 'alias' => 'grouptask,tree', 'class' => 'dropdown dropdown-hover');
-$lang->project->menu->story = array('link' => "{$lang->SRCommon}|project|story|projectID=%s", 'subModule' => 'story', 'alias' => 'linkstory,storykanban');
-$lang->project->menu->bug = array('link' => 'Bug|project|bug|projectID=%s');
-$lang->project->menu->build = array('link' => '版本|project|build|projectID=%s', 'subModule' => 'build');
-$lang->project->menu->testtask = array('link' => '測試單|project|testtask|projectID=%s', 'subModule' => 'testreport,testtask');
-$lang->project->menu->doc = array('link' => '文檔|doc|objectLibs|type=project&objectID=%s&from=project', 'subModule' => 'doc');
-$lang->project->menu->product = $lang->productCommon . '|project|manageproducts|projectID=%s';
-$lang->project->menu->team = array('link' => '團隊|project|team|projectID=%s', 'alias' => 'managemembers');
-$lang->project->menu->more = array('link' => '更多|project|whitelist|projectID=%s', 'subModule' => 'personnel', 'alias' => 'edit', 'class' => 'dropdown dropdown-hover');
-$lang->project->menu->action = array('link' => '動態|project|dynamic|projectID=%s', 'subModule' => 'dynamic', 'class' => 'dropdown dropdown-hover');
-$lang->project->menu->view = array('link' => '概況|project|view|projectID=%s', 'alias' => 'edit,start,suspend,putoff,close');
-$lang->project->menu->whitelist = array('link' => '白名單|project|whitelist|projectID=%s', 'alias' => 'addwhitelist', 'subModule' => 'personnel');
+$lang->project->menu->task = array('link' => '任務|project|task|projectID=%s', 'subModule' => 'task,tree', 'alias' => 'importtask,importbug');
+$lang->project->menu->kanban = array('link' => '看板|project|kanban|projectID=%s');
+$lang->project->menu->burn = array('link' => '燃盡圖|project|burn|projectID=%s');
+$lang->project->menu->view = array('link' => '視圖|project|grouptask|projectID=%s', 'alias' => 'grouptask,tree', 'class' => 'dropdown dropdown-hover');
+$lang->project->menu->story = array('link' => "{$lang->SRCommon}|project|story|projectID=%s", 'subModule' => 'story', 'alias' => 'linkstory,storykanban');
+$lang->project->menu->bug = array('link' => 'Bug|project|bug|projectID=%s');
+$lang->project->menu->build = array('link' => '版本|project|build|projectID=%s', 'subModule' => 'build');
+$lang->project->menu->testtask = array('link' => '測試單|project|testtask|projectID=%s', 'subModule' => 'testreport,testtask');
+$lang->project->menu->doc = array('link' => '文檔|doc|objectLibs|type=project&objectID=%s&from=project', 'subModule' => 'doc');
+$lang->project->menu->product = $lang->productCommon . '|project|manageproducts|projectID=%s';
+$lang->project->menu->team = array('link' => '團隊|project|team|projectID=%s', 'alias' => 'managemembers');
+$lang->project->menu->more = array('link' => '更多|project|whitelist|projectID=%s', 'subModule' => 'personnel', 'alias' => 'edit', 'class' => 'dropdown dropdown-hover');
$lang->project->subMenu = new stdclass();
$lang->project->subMenu->view = new stdclass();
@@ -358,7 +380,7 @@ $lang->project->subMenu->more->whitelist = array('link' => '白名單|project|wh
$lang->project->subMenu->more->action = array('link' => '動態|project|dynamic|projectID=%s');
$lang->project->subMenu->more->view = array('link' => '概況|project|view|projectID=%s', 'subModule' => 'view', 'alias' => 'edit,start,suspend,putoff,close');
-$lang->project->dividerMenu = ',project,doc,programplan,projectbuild,story,other,';
+$lang->project->dividerMenu = ',project,programplan,projectbuild,story,doc,other,';
$lang->task = new stdclass();
$lang->build = new stdclass();
@@ -549,8 +571,9 @@ $lang->admin->subMenu->data->backup = array('link' => '備份|backup|index', 'su
$lang->admin->subMenu->data->trash = '資源回收筒|action|trash';
$lang->admin->subMenu->system = new stdclass();
-$lang->admin->subMenu->system->cron = array('link' => '定時|cron|index', 'subModule' => 'cron');
-$lang->admin->subMenu->system->timezone = array('link' => '時區|custom|timezone', 'subModule' => 'custom');
+$lang->admin->subMenu->system->cron = array('link' => '定時|cron|index', 'subModule' => 'cron');
+$lang->admin->subMenu->system->timezone = array('link' => '時區|custom|timezone', 'subModule' => 'custom');
+$lang->admin->subMenu->system->buildIndex = array('link' => '重建索引|search|buildindex|');
$lang->convert = new stdclass();
$lang->upgrade = new stdclass();
@@ -611,6 +634,7 @@ $lang->navGroup = new stdclass();
$lang->navGroup->my = 'my';
$lang->navGroup->todo = 'my';
$lang->navGroup->effort = 'my';
+$lang->navGroup->score = 'my';
$lang->navGroup->personnel = 'program';
@@ -755,8 +779,8 @@ $lang->pager->pageOfTotal = '第 {page}/{totalPage}colorPicker = new stdclass();
$lang->colorPicker->errorTip = '不是有效的顏色值';
-$lang->proVersion = "升級";
$lang->downNotify = "下載桌面提醒";
+$lang->clientName = "客戶端";
$lang->downloadClient = "下載客戶端";
$lang->clientHelp = "客戶端使用說明";
$lang->clientHelpLink = "http://www.zentao.net/book/zentaopmshelp/302.html#2";
@@ -899,7 +923,7 @@ $lang->menu->scrum->ci = '代碼|repo|browse';
$lang->menu->scrum->projectbuild = array('link' => '版本|projectbuild|browse|project={PROJECT}');
$lang->menu->scrum->projectrelease = array('link' => '發佈|projectrelease|browse');
$lang->menu->scrum->other = array('link' => '其他|project|other', 'class' => 'dropdown dropdown-hover waterfall-list', 'subModule' => 'issue,risk,stakeholder');
-$lang->menu->scrum->projectsetting = array('link' => '設置|project|setting', 'class' => 'dropdown dropdown-hover waterfall-list');
+$lang->menu->scrum->projectsetting = array('link' => '設置|program|prjview|project={PROJECT}', 'alias' => 'prjedit,prjmanageproducts,prjgroup,prjmanagemembers,prjmanageview,prjmanagepriv,prjwhitelist,prjaddwhitelist');
$lang->scrum = new stdclass();
$lang->scrum->subMenu = new stdclass();
@@ -908,8 +932,12 @@ $lang->scrum->subMenu->other->issue = array('link' => '問題|issue|browse
$lang->scrum->subMenu->other->risk = array('link' => '風險|risk|browse|', 'subModule' => 'risk');
$lang->scrum->subMenu->other->stakeholder = array('link' => '干係人|stakeholder|browse|', 'subModule' => 'stakeholder');
-$lang->scrum->subMenu->projectsetting = new stdclass();
-$lang->scrum->subMenu->projectsetting->program = '項目|program|PRJEdit|';
+$lang->scrum->setMenu = new stdclass();
+$lang->scrum->setMenu->view = array('link' => '概況|program|prjview|project={PROJECT}', 'alias' => 'prjedit');
+$lang->scrum->setMenu->products = array('link' => '產品|program|PRJManageProducts|project={PROJECT}', 'alias' => 'prjmanageproducts');
+$lang->scrum->setMenu->group = array('link' => '權限|program|PRJGroup|project={PROJECT}', 'alias' => 'prjgroup,prjmanageview,prjmanagepriv');
+$lang->scrum->setMenu->members = array('link' => '團隊|program|PRJManageMembers|project={PROJECT}', 'alias' => 'prjmanagemembers');
+$lang->scrum->setMenu->whitelist = array('link' => '白名單|program|PRJWhitelist|project={PROJECT}', 'subModule' => 'personnel');
/* Waterfall menu. */
$lang->menu->waterfall = new stdclass();
@@ -925,19 +953,19 @@ $lang->menu->waterfall->track = array('link' => '矩陣|projectstory|tr
$lang->menu->waterfall->qa = '測試|qa|index';
$lang->menu->waterfall->projectrelease = array('link' => '發佈|projectrelease|browse');
$lang->menu->waterfall->projectbuild = array('link' => '版本|projectbuild|browse|project={PROJECT}');
-$lang->menu->waterfall->other = array('link' => '其他|project|other', 'class' => 'dropdown dropdown-hover waterfall-list', 'subModule' => 'issue,risk,stakeholder,nc');
-$lang->menu->waterfall->projectsetting = array('link' => '設置|project|setting', 'class' => 'dropdown dropdown-hover waterfall-list', 'subModule' => 'workestimation,durationestimation,budget,pssp');
+$lang->menu->waterfall->other = array('link' => '其他|project|other', 'class' => 'dropdown dropdown-hover waterfall-list', 'subModule' => 'issue,risk,stakeholder,nc,workestimation,durationestimation,budget,pssp');
+$lang->menu->waterfall->projectsetting = array('link' => '設置|program|prjview|project={PROJECT}', 'alias' => 'prjedit,prjmanageproducts,prjgroup,prjmanagemembers,prjmanageview,prjmanagepriv,prjwhitelist,prjaddwhitelist');
$lang->waterfall = new stdclass();
$lang->waterfall->subMenu = new stdclass();
$lang->waterfall->subMenu->other = new stdclass();
-$lang->waterfall->subMenu->other->issue = array('link' => '問題|issue|browse|', 'subModule' => 'issue');
-$lang->waterfall->subMenu->other->risk = array('link' => '風險|risk|browse|', 'subModule' => 'risk');
+$lang->waterfall->subMenu->other->estimation = array('link' => '估算|workestimation|index|program=%s', 'subModule' => 'workestimation,durationestimation,budget');
+$lang->waterfall->subMenu->other->issue = array('link' => '問題|issue|browse|', 'subModule' => 'issue');
+$lang->waterfall->subMenu->other->risk = array('link' => '風險|risk|browse|', 'subModule' => 'risk');
$lang->waterfall->subMenu->other->stakeholder = array('link' => '干係人|stakeholder|browse|', 'subModule' => 'stakeholder');
-$lang->waterfall->subMenu->projectsetting = new stdclass();
-$lang->waterfall->subMenu->projectsetting->workestimation = array('link' => '估算|workestimation|index|program=%s', 'subModule' => 'durationestimation,budget');
-$lang->waterfall->subMenu->projectsetting->program = '項目|program|PRJEdit|';
+$lang->waterfall->setMenu = new stdclass();
+$lang->waterfall->setMenu = $lang->scrum->setMenu;
$lang->waterfallproduct = new stdclass();
$lang->workestimation = new stdclass();
@@ -974,20 +1002,27 @@ $lang->waterfallproduct->menu = new stdclass();
$lang->durationestimation->menu = new stdclass();
$lang->projectstory->menu = new stdclass();
-$lang->stakeholder->menu->list = array('link' => '干係人列表|stakeholder|browse|', 'alias' => 'create,edit,view,batchcreate');
-$lang->stakeholder->menu->issue = array('link' => '問題管理|stakeholder|issue|');
-
-$lang->workestimation->menu->index = '工作量估算|workestimation|index|project={PROJECT}';
-$lang->workestimation->menu->duration = array('link' => '工期估算|durationestimation|index|project={PROJECT}', 'subModule' => 'durationestimation');
-$lang->workestimation->menu->budget = array('link' => '費用估算|budget|summary|', 'subModule' => 'budget');
+$lang->workestimation->menu->workestimation = '工作量估算|workestimation|index|project={PROJECT}';
+$lang->workestimation->menu->duration = array('link' => '工期估算|durationestimation|index|project={PROJECT}', 'subModule' => 'durationestimation');
+$lang->workestimation->menu->budget = array('link' => '費用估算|budget|summary|', 'subModule' => 'budget');
$lang->durationestimation->menu = $lang->workestimation->menu;
-$lang->budget->menu = $lang->workestimation->menu;
+$lang->budget->menu = $lang->workestimation->menu;
+
+$lang->stakeholder->menu->list = array('link' => '干係人列表|stakeholder|browse|', 'alias' => 'create,edit,view,batchcreate');
+$lang->stakeholder->menu->issue = array('link' => '問題管理|stakeholder|issue|');
$lang->programplan->menu->gantt = array('link' => '甘特圖|programplan|browse|programID={PROJECT}&productID={PRODUCT}&type=gantt');
$lang->programplan->menu->lists = array('link' => '階段列表|programplan|browse|programID={PROJECT}&productID={PRODUCT}&type=lists', 'alias' => 'create');
+$lang->design->menu->all = array('link' => '所有|design|browse|productID={PRODUCT}&browseType=all');
+$lang->design->menu->hlds = array('link' => '概要設計|design|browse|productID={PRODUCT}&browseType=HLDS');
+$lang->design->menu->dds = array('link' => '詳細設計|design|browse|productID={PRODUCT}&browseType=DDS');
+$lang->design->menu->dbds = array('link' => '資料庫設計|design|browse|productID={PRODUCT}&browseType=DBDS');
+$lang->design->menu->ads = array('link' => '介面設計|design|browse|productID={PRODUCT}&browseType=ADS');
+$lang->design->menu->bysearch = array('link' => ' ' . $lang->searchAB . '');
+
$lang->nc->menu = $lang->auditplan->menu;
-$lang->noMenuModule = array('my', 'todo', 'effort', 'program', 'product', 'productplan', 'projectbuild', 'projectrelease', 'projectstory', 'story', 'branch', 'release', 'attend', 'leave', 'makeup', 'overtime', 'lieu', 'custom', 'admin', 'mail', 'extension', 'dev', 'backup', 'action', 'cron', 'issue', 'risk', 'pssp', 'sms', 'message', 'webhook', 'search', 'stage');
+$lang->noMenuModule = array('my', 'todo', 'effort', 'program', 'product', 'productplan', 'projectbuild', 'projectrelease', 'projectstory', 'story', 'branch', 'release', 'attend', 'leave', 'makeup', 'overtime', 'lieu', 'custom', 'admin', 'mail', 'extension', 'dev', 'backup', 'action', 'cron', 'issue', 'risk', 'pssp', 'sms', 'message', 'webhook', 'search', 'score', 'stage');
include (dirname(__FILE__) . '/menuOrder.php');
diff --git a/module/custom/lang/de.php b/module/custom/lang/de.php
index 2b6efcbc6e..85682aae6d 100644
--- a/module/custom/lang/de.php
+++ b/module/custom/lang/de.php
@@ -148,6 +148,7 @@ $lang->custom->user->fields['deleted'] = 'Show deleted user';
$lang->custom->system = array('required', 'score');
+$lang->custom->block = new stdclass();
$lang->custom->block->fields['closed'] = 'Closed Block';
$lang->custom->currentLang = 'Current Language';
diff --git a/module/custom/lang/en.php b/module/custom/lang/en.php
index 8b76b3e192..6bc6d08c39 100644
--- a/module/custom/lang/en.php
+++ b/module/custom/lang/en.php
@@ -148,6 +148,7 @@ $lang->custom->user->fields['deleted'] = 'Deleted User';
$lang->custom->system = array('required', 'score');
+$lang->custom->block = new stdclass();
$lang->custom->block->fields['closed'] = 'Closed Block';
$lang->custom->currentLang = 'Current Language';
diff --git a/module/custom/lang/fr.php b/module/custom/lang/fr.php
index e7e4e5db0e..f3921a99d9 100644
--- a/module/custom/lang/fr.php
+++ b/module/custom/lang/fr.php
@@ -148,6 +148,7 @@ $lang->custom->user->fields['deleted'] = 'Parti';
$lang->custom->system = array('required', 'score');
+$lang->custom->block = new stdclass();
$lang->custom->block->fields['closed'] = 'Bloc Fermé';
$lang->custom->currentLang = 'Langage Courant';
diff --git a/module/custom/lang/vi.php b/module/custom/lang/vi.php
index 5703a020fa..4e018a2d1a 100644
--- a/module/custom/lang/vi.php
+++ b/module/custom/lang/vi.php
@@ -148,6 +148,7 @@ $lang->custom->user->fields['deleted'] = 'Người dùng đã xóa';
$lang->custom->system = array('required', 'score');
+$lang->custom->block = new stdclass();
$lang->custom->block->fields['closed'] = 'Đã đóng Block';
$lang->custom->currentLang = 'Ngôn ngữ hiện tại';
diff --git a/module/custom/lang/zh-cn.php b/module/custom/lang/zh-cn.php
index 98bd9ac087..0d822c7f5a 100644
--- a/module/custom/lang/zh-cn.php
+++ b/module/custom/lang/zh-cn.php
@@ -148,6 +148,7 @@ $lang->custom->user->fields['deleted'] = '列出已删除用户';
$lang->custom->system = array('required', 'score');
+$lang->custom->block = new stdclass();
$lang->custom->block->fields['closed'] = '关闭的区块';
$lang->custom->currentLang = '适用当前语言';
diff --git a/module/custom/lang/zh-tw.php b/module/custom/lang/zh-tw.php
index 329768c5a6..2cee1684eb 100644
--- a/module/custom/lang/zh-tw.php
+++ b/module/custom/lang/zh-tw.php
@@ -1,52 +1,56 @@
custom->common = '自定義';
-$lang->custom->index = '首頁';
-$lang->custom->set = '自定義配置';
-$lang->custom->restore = '恢復預設';
-$lang->custom->key = '鍵';
-$lang->custom->value = '值';
-$lang->custom->flow = '流程';
-$lang->custom->working = '工作方式';
-$lang->custom->select = '請選擇流程:';
-$lang->custom->branch = '多分支';
-$lang->custom->owner = '所有者';
-$lang->custom->module = '模組';
-$lang->custom->section = '附加部分';
-$lang->custom->lang = '所屬語言';
-$lang->custom->setPublic = '設為公共';
-$lang->custom->required = '必填項';
-$lang->custom->score = '積分';
-$lang->custom->timezone = '時區';
-$lang->custom->scoreReset = '重置積分';
-$lang->custom->scoreTitle = '積分功能';
-$lang->custom->project = $lang->executionCommon;
-$lang->custom->product = $lang->productCommon;
-$lang->custom->setscrum = '切換敏捷視圖';
-$lang->custom->setWaterfall = '切換瀑布視圖';
-$lang->custom->estimate = '估算配置';
-$lang->custom->estimateConfig = '估算配置';
-$lang->custom->estimateUnit = '估算單位';
-$lang->custom->estimateEfficiency = '生產率';
-$lang->custom->estimateCost = '單位人工成本';
-$lang->custom->estimateHours = '每日工時';
-$lang->custom->estimateDays = '每週工作天數';
-$lang->custom->region = '區間';
-$lang->custom->tips = '提示語';
-$lang->custom->setTips = '設置提示語';
-$lang->custom->isRange = '是否目標控制範圍';
-$lang->custom->concept = "概念";
-$lang->custom->URStory = "用戶需求";
-$lang->custom->SRStory = "軟件需求";
-$lang->custom->epic = "史詩";
-$lang->custom->scrumStory = "故事";
-$lang->custom->waterfallCommon = "瀑布";
-$lang->custom->configureWaterfall = "瀑布自定義";
-$lang->custom->configureScrum = "敏捷自定義";
-
-$lang->custom->object['program'] = '項目';
-$lang->custom->program->currencySetting = '貨幣設置';
-$lang->custom->program->defaultCurrency = '默認貨幣';
-$lang->custom->program->fields['unitList'] = '預算單位';
+$lang->custom->common = '自定義';
+$lang->custom->index = '首頁';
+$lang->custom->set = '自定義配置';
+$lang->custom->restore = '恢復預設';
+$lang->custom->key = '鍵';
+$lang->custom->value = '值';
+$lang->custom->flow = '流程';
+$lang->custom->working = '工作方式';
+$lang->custom->select = '請選擇流程:';
+$lang->custom->branch = '多分支';
+$lang->custom->owner = '所有者';
+$lang->custom->module = '模組';
+$lang->custom->section = '附加部分';
+$lang->custom->lang = '所屬語言';
+$lang->custom->setPublic = '設為公共';
+$lang->custom->required = '必填項';
+$lang->custom->score = '積分';
+$lang->custom->timezone = '時區';
+$lang->custom->scoreReset = '重置積分';
+$lang->custom->scoreTitle = '積分功能';
+$lang->custom->project = $lang->sprintCommon;
+$lang->custom->product = $lang->productCommon;
+$lang->custom->estimate = '估算配置';
+$lang->custom->estimateConfig = '估算配置';
+$lang->custom->estimateUnit = '估算單位';
+$lang->custom->estimateEfficiency = '生產率';
+$lang->custom->estimateCost = '單位人工成本';
+$lang->custom->estimateHours = '每日工時';
+$lang->custom->estimateDays = '每週工作天數';
+$lang->custom->convertFactor = '換算係數';
+$lang->custom->region = '區間';
+$lang->custom->tips = '提示語';
+$lang->custom->setTips = '設置提示語';
+$lang->custom->isRange = '是否目標控制範圍';
+$lang->custom->concept = "項目概念";
+$lang->custom->URStory = "用戶需求";
+$lang->custom->SRStory = "軟件需求";
+$lang->custom->epic = "史詩";
+$lang->custom->scrumStory = "故事";
+$lang->custom->waterfallCommon = "瀑布";
+$lang->custom->buildin = "系統內置";
+$lang->custom->isDefault = '是否預設';
+$lang->custom->editStoryConcept = "編輯需求概念";
+$lang->custom->setStoryConcept = "設置需求概念";
+$lang->custom->setDefaultConcept = "設置預設概念";
+$lang->custom->browseStoryConcept = "需求概念列表";
+$lang->custom->deleteStoryConcept = "刪除需求概念";
+$lang->custom->configureScrum = "敏捷模型自定義";
+$lang->custom->URConcept = "用需概念";
+$lang->custom->SRConcept = "軟需概念";
+$lang->custom->oneUnit = "一個{$lang->hourCommon}";
+$lang->custom->convertRelationTitle = "請先設置{$lang->hourCommon}轉換為%s的換算係數";
$lang->custom->unitList['efficiency'] = '工時/';
$lang->custom->unitList['manhour'] = '人時/';
@@ -64,18 +68,21 @@ $lang->custom->tipCostList['CV'] = '成本偏差率(CV%)';
$lang->custom->tipRangeList[0] = '否';
$lang->custom->tipRangeList[1] = '是';
-$lang->custom->regionMustNumber = '區間必須是數字';
-$lang->custom->tipNotEmpty = '提示語不能為空';
-$lang->custom->currencyNotEmpty = '至少選擇一種貨幣';
-$lang->custom->defaultNotEmpty = '默認貨幣不能為空';
+$lang->custom->regionMustNumber = '區間必須是數字';
+$lang->custom->tipNotEmpty = '提示語不能為空';
+$lang->custom->currencyNotEmpty = '至少選擇一種貨幣';
+$lang->custom->defaultNotEmpty = '預設貨幣不能為空';
+$lang->custom->convertRelationTips = "{$lang->hourCommon}轉換為%s後,歷史數據將被統一轉換為%s";
+$lang->custom->saveTips = '點擊保存後,則以當前%s為預設估算單位';
$lang->custom->numberError = '區間必須大於零';
-$lang->custom->closedProject = '已關閉' . $lang->executionCommon;
+$lang->custom->closedProject = '已關閉' . $lang->sprintCommon;
$lang->custom->closedProduct = '已關閉' . $lang->productCommon;
+$lang->custom->object['program'] = '項目';
$lang->custom->object['product'] = $lang->productCommon;
-$lang->custom->object['project'] = $lang->executionCommon;
+$lang->custom->object['project'] = $lang->sprintCommon;
$lang->custom->object['story'] = $lang->SRCommon;
$lang->custom->object['task'] = '任務';
$lang->custom->object['bug'] = 'Bug';
@@ -85,6 +92,11 @@ $lang->custom->object['todo'] = '待辦';
$lang->custom->object['user'] = '用戶';
$lang->custom->object['block'] = '區塊';
+$lang->custom->program = new stdClass();
+$lang->custom->program->currencySetting = '貨幣設置';
+$lang->custom->program->defaultCurrency = '預設貨幣';
+$lang->custom->program->fields['unitList'] = '預算單位';
+
$lang->custom->story = new stdClass();
$lang->custom->story->fields['priList'] = '優先順序';
$lang->custom->story->fields['sourceList'] = '來源';
@@ -134,8 +146,9 @@ $lang->custom->user->fields['statusList'] = '狀態';
$lang->custom->user->fields['contactField'] = '可用聯繫方式';
$lang->custom->user->fields['deleted'] = '列出已刪除用戶';
-$lang->custom->system = array('flow', 'working', 'required', 'score', 'estimate');
+$lang->custom->system = array('required', 'score');
+$lang->custom->block = new stdclass();
$lang->custom->block->fields['closed'] = '關閉的區塊';
$lang->custom->currentLang = '適用當前語言';
@@ -157,7 +170,9 @@ $lang->custom->notice->required = '頁面提交時,選中
$lang->custom->notice->conceptResult = '我們已經根據您的選擇為您設置了 %s-%s 模式,使用%s + %s。';
$lang->custom->notice->conceptPath = '您可以在:後台 -> 自定義 -> 流程頁面修改。';
$lang->custom->notice->readOnlyOfProduct = '禁止修改後,已關閉' . $lang->productCommon . '下的' . $lang->SRCommon . '、Bug、用例、日誌、發佈、計劃都禁止修改。';
-$lang->custom->notice->readOnlyOfProject = '禁止修改後,已關閉' . $lang->executionCommon . '下的任務、版本、日誌以及關聯需求都禁止修改。';
+$lang->custom->notice->readOnlyOfProject = '禁止修改後,已關閉' . $lang->sprintCommon . '下的任務、版本、日誌以及關聯需求都禁止修改。';
+$lang->custom->notice->URSREmpty = '自定義需求名稱不能為空!';
+$lang->custom->notice->confirmDelete = '您確定要刪除嗎?';
$lang->custom->notice->indexPage['product'] = "從8.2版本起增加了產品主頁視圖,是否預設進入產品主頁?";
$lang->custom->notice->indexPage['project'] = "從8.2版本起增加了項目主頁視圖,是否預設進入項目主頁?";
@@ -182,11 +197,8 @@ $lang->custom->weekend = '休息日';
$lang->custom->weekendList[2] = '雙休';
$lang->custom->weekendList[1] = '單休';
-$lang->custom->sprintConcept = new stdclass();
-$lang->custom->sprintConcept->relation['0_0'] = '項目 - 產品 - 迭代';
-$lang->custom->sprintConcept->relation['0_1'] = '項目 - 產品 - 衝刺';
-
-$lang->custom->sprintConcept->notice = '請根據實際情況選擇適合自己團隊的概念。';
+$lang->custom->sprintConceptList[0] = '項目 - 產品 - 迭代';
+$lang->custom->sprintConceptList[1] = '項目 - 產品 - 衝刺';
$lang->custom->workingList['full'] = '完整研發管理工具';
@@ -205,33 +217,27 @@ $lang->custom->CRProject[0] = '禁止修改';
$lang->custom->moduleName['product'] = $lang->productCommon;
$lang->custom->moduleName['productplan'] = '計劃';
-$lang->custom->moduleName['project'] = $lang->executionCommon;
+$lang->custom->moduleName['project'] = $lang->sprintCommon;
$lang->custom->conceptQuestions['overview'] = "1. 下述哪種組合方式更適合您公司的管理現狀?";
$lang->custom->conceptQuestions['story'] = "2. 您公司是在使用需求概念還是用戶故事概念?";
$lang->custom->conceptQuestions['requirementpoint'] = "3. 您公司是在使用工時還是功能點來做規模估算?";
$lang->custom->conceptQuestions['storypoint'] = "3. 您公司是在使用工時還是故事點來做規模估算?";
-$lang->custom->conceptOptions = new stdclass;
-
-$lang->custom->conceptOptions->story = array();
+$lang->custom->conceptOptions = new stdclass;
+$lang->custom->conceptOptions->story = array();
$lang->custom->conceptOptions->story['0'] = '需求';
$lang->custom->conceptOptions->story['1'] = '故事';
-$lang->custom->conceptOptions->hourPoint = array();
-$lang->custom->conceptOptions->hourPoint['0'] = '故事點';
-$lang->custom->conceptOptions->hourPoint['1'] = '功能點';
-$lang->custom->conceptOptions->hourPoint['2'] = '代碼行';
+$lang->custom->conceptOptions->hourPoint = array();
+$lang->custom->conceptOptions->hourPoint['0'] = '工時';
+$lang->custom->conceptOptions->hourPoint['1'] = '故事點';
+$lang->custom->conceptOptions->hourPoint['2'] = '功能點';
-$lang->custom->waterfall = new stdclass();
-$lang->custom->waterfall->URAndSR = '是否啟用用戶需求概念?';
-$lang->custom->waterfall->URSRName = '用戶需求和軟件需求的概念定義?';
+$lang->custom->conceptOptions->estimateUnit = array();
+$lang->custom->conceptOptions->estimateUnit['0'] = '工時(H)';
+$lang->custom->conceptOptions->estimateUnit['1'] = '故事點(SP)';
+$lang->custom->conceptOptions->estimateUnit['2'] = '功能點(FP)';
$lang->custom->scrum = new stdclass();
-$lang->custom->scrum->URAndSR = '是否啟用epic概念?';
-$lang->custom->scrum->URSRName = '需求的概念定義?';
-
-$lang->custom->waterfallOptions = new stdclass();
-$lang->custom->waterfallOptions->URAndSR = array();
-$lang->custom->waterfallOptions->URAndSR[0] = '否';
-$lang->custom->waterfallOptions->URAndSR[1] = '是';
+$lang->custom->scrum->setConcept = '設置項目概念';
diff --git a/module/design/lang/zh-tw.php b/module/design/lang/zh-tw.php
new file mode 100644
index 0000000000..b5877740ed
--- /dev/null
+++ b/module/design/lang/zh-tw.php
@@ -0,0 +1,78 @@
+
+ * @package design
+ * @version $Id: zh-tw.php 4729 2020-09-01 07:53:55Z tianshujie@easycorp.ltd $
+ * @link http://www.zentao.net
+ */
+/* 欄位列表. */
+$lang->design->id = '編號';
+$lang->design->name = '設計名稱';
+$lang->design->story = '需求';
+$lang->design->type = '設計類型';
+$lang->design->ditto = '同上';
+$lang->design->submission = '相關提交';
+$lang->design->version = '版本號';
+$lang->design->assignedTo = '指派給';
+$lang->design->actions = '操作';
+$lang->design->byQuery = '搜索';
+$lang->design->products = '所屬產品';
+$lang->design->story = '相關需求';
+$lang->design->file = '附件';
+$lang->design->desc = '設計描述';
+$lang->design->range = '影響範圍';
+$lang->design->product = '所屬產品';
+$lang->design->basicInfo = '基礎信息';
+$lang->design->commitBy = '由誰提交';
+$lang->design->commitDate = '提交時間';
+$lang->design->affectedStory = "影響{$lang->SRCommon}";
+$lang->design->affectedTasks = '影響任務';
+$lang->design->reviewObject = '評審對象';
+$lang->design->createdBy = '由誰創建';
+$lang->design->createdDate = '創建時間';
+$lang->design->basicInfo = '基本信息';
+$lang->design->noAssigned = '未指派';
+$lang->design->comment = '註釋';
+
+/* 動作列表. */
+$lang->design->common = '設計';
+$lang->design->create = '創建設計';
+$lang->design->batchCreate = '批量創建';
+$lang->design->edit = '變更';
+$lang->design->delete = '刪除';
+$lang->design->view = '設計概況';
+$lang->design->browse = '瀏覽列表';
+$lang->design->viewCommit = '查看提交';
+$lang->design->linkCommit = '關聯提交';
+$lang->design->unlinkCommit = '取消關聯';
+$lang->design->submit = '提交評審';
+$lang->design->assignTo = '指派';
+$lang->design->revision = '查看關聯代碼';
+
+/* 欄位取值. */
+$lang->design->typeList = array();
+$lang->design->typeList[''] = '';
+$lang->design->typeList['HLDS'] = '概要設計';
+$lang->design->typeList['DDS'] = '詳細設計';
+$lang->design->typeList['DBDS'] = '資料庫設計';
+$lang->design->typeList['ADS'] = '介面設計';
+
+$lang->design->rangeList = array();
+$lang->design->rangeList['all'] = '全部記錄';
+$lang->design->rangeList['assign'] = '選中記錄';
+
+$lang->design->featureBar['all'] = '所有';
+$lang->design->featureBar += $lang->design->typeList;
+
+/* 提示信息. */
+$lang->design->errorSelection = '還沒有選中記錄!';
+$lang->design->noDesign = '暫時沒有記錄';
+$lang->design->noCommit = '暫時沒有提交記錄';
+$lang->design->confirmDelete = '您確定要刪除這個設計嗎?';
+$lang->design->confirmUnlink = '您確定要移除這個提交嗎?';
+$lang->design->errorDate = '開始日期不能大於結束日期';
+$lang->design->deleted = '已刪除';
diff --git a/module/dev/lang/zh-tw.php b/module/dev/lang/zh-tw.php
index 9df7cea3a3..13c6cad624 100644
--- a/module/dev/lang/zh-tw.php
+++ b/module/dev/lang/zh-tw.php
@@ -114,6 +114,8 @@ $lang->dev->tableList['ci'] = '持續整合';
$lang->dev->tableList['compile'] = '構建';
$lang->dev->tableList['jenkins'] = 'Jenkins';
$lang->dev->tableList['job'] = '構建任務';
+$lang->dev->tableList['searchdict'] = '搜索字典';
+$lang->dev->tableList['searchindex'] = '搜索索引';
$lang->dev->groupList['my'] = '我的地盤';
$lang->dev->groupList['product'] = $lang->productCommon;
@@ -125,6 +127,7 @@ $lang->dev->groupList['company'] = '組織';
$lang->dev->groupList['repo'] = '持續整合';
$lang->dev->groupList['api'] = 'API';
$lang->dev->groupList['message'] = '消息';
+$lang->dev->groupList['search'] = '搜索';
$lang->dev->endGroupList['admin'] = '後台';
$lang->dev->endGroupList['system'] = '系統';
diff --git a/module/group/lang/resource.php b/module/group/lang/resource.php
index e8542443b1..0034950980 100644
--- a/module/group/lang/resource.php
+++ b/module/group/lang/resource.php
@@ -73,6 +73,7 @@ $lang->moduleOrder[245] = 'durationestimation';
$lang->moduleOrder[250] = 'subject';
$lang->moduleOrder[255] = 'holiday';
+$lang->moduleOrder[260] = 'weekly';
$lang->resource = new stdclass();
@@ -101,23 +102,39 @@ $lang->resource->my->deleteContacts = 'deleteContacts';
$lang->resource->my->score = 'score';
$lang->resource->my->unbind = 'unbind';
$lang->resource->my->team = 'team';
+$lang->resource->my->story = 'story';
+$lang->resource->my->task = 'task';
+$lang->resource->my->bug = 'bug';
+$lang->resource->my->testtask = 'testtask';
+$lang->resource->my->testcase = 'testcase';
+$lang->resource->my->execution = 'execution';
+$lang->resource->my->issue = 'issue';
+$lang->resource->my->risk = 'risk';
-$lang->my->methodOrder[1] = 'index';
-$lang->my->methodOrder[5] = 'todo';
-$lang->my->methodOrder[10] = 'work';
-$lang->my->methodOrder[15] = 'contribute';
-$lang->my->methodOrder[20] = 'project';
-$lang->my->methodOrder[25] = 'profile';
-$lang->my->methodOrder[30] = 'uploadAvatar';
-$lang->my->methodOrder[35] = 'preference';
-$lang->my->methodOrder[40] = 'dynamic';
-$lang->my->methodOrder[45] = 'editProfile';
-$lang->my->methodOrder[50] = 'changePassword';
-$lang->my->methodOrder[55] = 'manageContacts';
-$lang->my->methodOrder[60] = 'deleteContacts';
-$lang->my->methodOrder[65] = 'score';
-$lang->my->methodOrder[70] = 'unbind';
-$lang->my->methodOrder[75] = 'team';
+$lang->my->methodOrder[1] = 'index';
+$lang->my->methodOrder[5] = 'todo';
+$lang->my->methodOrder[10] = 'work';
+$lang->my->methodOrder[15] = 'contribute';
+$lang->my->methodOrder[20] = 'project';
+$lang->my->methodOrder[25] = 'profile';
+$lang->my->methodOrder[30] = 'uploadAvatar';
+$lang->my->methodOrder[35] = 'preference';
+$lang->my->methodOrder[40] = 'dynamic';
+$lang->my->methodOrder[45] = 'editProfile';
+$lang->my->methodOrder[50] = 'changePassword';
+$lang->my->methodOrder[55] = 'manageContacts';
+$lang->my->methodOrder[60] = 'deleteContacts';
+$lang->my->methodOrder[65] = 'score';
+$lang->my->methodOrder[70] = 'unbind';
+$lang->my->methodOrder[75] = 'team';
+$lang->my->methodOrder[80] = 'story';
+$lang->my->methodOrder[85] = 'task';
+$lang->my->methodOrder[90] = 'bug';
+$lang->my->methodOrder[95] = 'testtask';
+$lang->my->methodOrder[100] = 'testcase';
+$lang->my->methodOrder[105] = 'execution';
+$lang->my->methodOrder[110] = 'issue';
+$lang->my->methodOrder[115] = 'risk';
/* Todo. */
$lang->resource->todo = new stdclass();
@@ -172,6 +189,7 @@ $lang->resource->program->PGMProject = 'PGMProject';
$lang->resource->program->PGMStakeholder = 'PGMStakeholder';
$lang->resource->program->createStakeholder = 'createStakeholder';
$lang->resource->program->unlinkStakeholder = 'unlinkStakeholder';
+$lang->resource->program->batchUnlinkStakeholders = 'batchUnlinkStakeholders';
$lang->resource->program->export = 'export';
$lang->resource->program->index = 'PRJIndex';
$lang->resource->program->PRJBrowse = 'PRJBrowse';
@@ -213,32 +231,33 @@ $lang->program->methodOrder[60] = 'PGMProject';
$lang->program->methodOrder[65] = 'PGMStakeholder';
$lang->program->methodOrder[67] = 'createStakeholder';
$lang->program->methodOrder[70] = 'unlinkStakeholder';
-$lang->program->methodOrder[75] = 'export';
-$lang->program->methodOrder[80] = 'PRJIndex';
-$lang->program->methodOrder[85] = 'PRJBrowse';
-$lang->program->methodOrder[90] = 'PRJProgramTitle';
-$lang->program->methodOrder[95] = 'PRJCreate';
-$lang->program->methodOrder[100] = 'PRJEdit';
-$lang->program->methodOrder[105] = 'PRJGroup';
-$lang->program->methodOrder[110] = 'PRJCreateGroup';
-$lang->program->methodOrder[115] = 'PRJManageView';
-$lang->program->methodOrder[120] = 'PRJManagePriv';
-$lang->program->methodOrder[125] = 'PRJManageMembers';
-$lang->program->methodOrder[130] = 'PRJManageGroupMember';
-$lang->program->methodOrder[135] = 'PRJCopyGroup';
-$lang->program->methodOrder[140] = 'PRJEditGroup';
-$lang->program->methodOrder[145] = 'PRJStart';
-$lang->program->methodOrder[150] = 'PRJSuspend';
-$lang->program->methodOrder[155] = 'PRJClose';
-$lang->program->methodOrder[160] = 'PRJActivate';
-$lang->program->methodOrder[165] = 'PRJUpdateOrder';
-$lang->program->methodOrder[170] = 'PRJDelete';
-$lang->program->methodOrder[175] = 'PRJView';
-$lang->program->methodOrder[180] = 'PRJWhitelist';
-$lang->program->methodOrder[185] = 'PRJAddWhitelist';
-$lang->program->methodOrder[190] = 'unbindWhielist';
-$lang->program->methodOrder[195] = 'PRJManageProducts';
-$lang->program->methodOrder[200] = 'view';
+$lang->program->methodOrder[75] = 'batchUnlinkStakeholders';
+$lang->program->methodOrder[80] = 'export';
+$lang->program->methodOrder[85] = 'PRJIndex';
+$lang->program->methodOrder[90] = 'PRJBrowse';
+$lang->program->methodOrder[95] = 'PRJProgramTitle';
+$lang->program->methodOrder[100] = 'PRJCreate';
+$lang->program->methodOrder[105] = 'PRJEdit';
+$lang->program->methodOrder[110] = 'PRJGroup';
+$lang->program->methodOrder[115] = 'PRJCreateGroup';
+$lang->program->methodOrder[120] = 'PRJManageView';
+$lang->program->methodOrder[125] = 'PRJManagePriv';
+$lang->program->methodOrder[130] = 'PRJManageMembers';
+$lang->program->methodOrder[135] = 'PRJManageGroupMember';
+$lang->program->methodOrder[140] = 'PRJCopyGroup';
+$lang->program->methodOrder[145] = 'PRJEditGroup';
+$lang->program->methodOrder[150] = 'PRJStart';
+$lang->program->methodOrder[155] = 'PRJSuspend';
+$lang->program->methodOrder[160] = 'PRJClose';
+$lang->program->methodOrder[165] = 'PRJActivate';
+$lang->program->methodOrder[170] = 'PRJUpdateOrder';
+$lang->program->methodOrder[175] = 'PRJDelete';
+$lang->program->methodOrder[180] = 'PRJView';
+$lang->program->methodOrder[185] = 'PRJWhitelist';
+$lang->program->methodOrder[190] = 'PRJAddWhitelist';
+$lang->program->methodOrder[195] = 'unbindWhielist';
+$lang->program->methodOrder[200] = 'PRJManageProducts';
+$lang->program->methodOrder[205] = 'view';
/* Personnel . */
$lang->resource->personnel = new stdclass();
@@ -495,10 +514,11 @@ $lang->resource->projectstory->view = 'view';
$lang->resource->projectstory->linkStory = 'linkStory';
$lang->resource->projectstory->unlinkStory = 'unlinkStory';
-$lang->productplan->methodOrder[5] = 'story';
-$lang->productplan->methodOrder[10] = 'track';
-$lang->productplan->methodOrder[15] = 'linkStory';
-$lang->productplan->methodOrder[20] = 'unlinkStory';
+$lang->projectstory->methodOrder[5] = 'story';
+$lang->projectstory->methodOrder[10] = 'track';
+$lang->projectstory->methodOrder[15] = 'view';
+$lang->projectstory->methodOrder[20] = 'linkStory';
+$lang->projectstory->methodOrder[25] = 'unlinkStory';
/* Release. */
$lang->resource->release = new stdclass();
@@ -1149,6 +1169,12 @@ $lang->holiday->methodOrder[10] = 'create';
$lang->holiday->methodOrder[15] = 'edit';
$lang->holiday->methodOrder[20] = 'delete';
+/* Weekly. */
+$lang->resource->weekly = new stdclass();
+$lang->resource->weekly->index = 'index';
+
+$lang->holiday->methodOrder[5] = 'index';
+
/* Custom. */
$lang->resource->custom = new stdclass();
$lang->resource->custom->index = 'index';
diff --git a/module/group/lang/zh-tw.php b/module/group/lang/zh-tw.php
index be8c010a53..9ad690969b 100644
--- a/module/group/lang/zh-tw.php
+++ b/module/group/lang/zh-tw.php
@@ -15,20 +15,24 @@ $lang->group->create = '新增分組';
$lang->group->edit = '編輯分組';
$lang->group->copy = '複製分組';
$lang->group->delete = '刪除分組';
-$lang->group->manageView = '視圖維護';
+$lang->group->manageView = '視野維護';
$lang->group->managePriv = '權限維護';
$lang->group->managePrivByGroup = '權限維護';
$lang->group->managePrivByModule = '按模組分配權限';
$lang->group->byModuleTips = '(可以按住Shift或者Ctrl鍵進行多選)';
$lang->group->manageMember = '成員維護';
+$lang->group->managePRJAdmin = '維護項目管理員';
$lang->group->confirmDelete = '您確定刪除該用戶分組嗎?';
$lang->group->successSaved = '成功保存';
$lang->group->errorNotSaved = '沒有保存,請確認選擇了權限數據。';
$lang->group->viewList = '可訪問視圖';
+$lang->group->PRJ = '可管理項目';
+$lang->group->programList = '可訪問項目集';
$lang->group->productList = '可訪問' . $lang->productCommon;
-$lang->group->projectList = '可訪問' . $lang->executionCommon;
+$lang->group->projectList = '可訪問項目';
$lang->group->dynamic = '可查看動態';
$lang->group->noticeVisit = '空代表沒有訪問限制';
+$lang->group->noneProgram = "暫時沒有項目";
$lang->group->noneProduct = "暫時沒有{$lang->productCommon}";
$lang->group->noneProject = "暫時沒有{$lang->executionCommon}";
@@ -44,6 +48,7 @@ $lang->group->priv = '權限';
$lang->group->option = '選項';
$lang->group->inside = '組內用戶';
$lang->group->outside = '組外用戶';
+$lang->group->limited = '受限用戶組';
$lang->group->other = '其他模組';
$lang->group->all = '所有權限';
diff --git a/module/holiday/lang/zh-tw.php b/module/holiday/lang/zh-tw.php
index acc9806962..43e0cd41ab 100644
--- a/module/holiday/lang/zh-tw.php
+++ b/module/holiday/lang/zh-tw.php
@@ -6,14 +6,22 @@ $lang->holiday->create = '新建';
$lang->holiday->edit = '編輯';
$lang->holiday->delete = '刪除';
+$lang->holiday->createAction = '創建節假日';
+$lang->holiday->editAction = '編輯節假日';
+$lang->holiday->deleteAction = '刪除節假日';
+
$lang->holiday->id = '編號';
$lang->holiday->name = '名稱';
$lang->holiday->desc = '描述';
$lang->holiday->type = '類型';
$lang->holiday->begin = '開始日期';
$lang->holiday->end = '結束日期';
+$lang->holiday->all = '所有';
$lang->holiday->holiday = '假期';
$lang->holiday->typeList['holiday'] = '假期';
$lang->holiday->typeList['working'] = '補班';
+
+$lang->holiday->emptyTip = '暫時沒有節假日。';
+$lang->holiday->confirmDelete = '確認刪除節假日?';
diff --git a/module/misc/lang/zh-tw.php b/module/misc/lang/zh-tw.php
index 29c3eab4dd..779d11bbe5 100644
--- a/module/misc/lang/zh-tw.php
+++ b/module/misc/lang/zh-tw.php
@@ -142,7 +142,7 @@ $lang->misc->releaseDate['7.2.stable'] = '2015-05-22';
$lang->misc->releaseDate['7.1.stable'] = '2015-03-07';
$lang->misc->releaseDate['6.3.stable'] = '2014-11-07';
-$lang->misc->feature->all['20.0.beta3'][] = array('title'=>'優化導航交互,增強用戶體驗', 'desc' => '');
+$lang->misc->feature->all['20.0.beta3'][] = array('title'=>'優化導航交互,增強用戶體驗,升級到旗艦版', 'desc' => '');
$lang->misc->feature->all['20.0.beta2'][] = array('title'=>'重構組織導航,修復bug,完善細節', 'desc' => '');
$lang->misc->feature->all['20.0.beta1'][] = array('title'=>'禪道20beta版本,修復bug,完善細節', 'desc' => '');
$lang->misc->feature->all['20.0.alpha1'][] = array('title'=>'禪道20版本大更新,重構導航,增加瀑布模型', 'desc' => '增加項目集和項目概念
將原項目概念變為迭代或階段概念
增加瀑布開發模板
');
diff --git a/module/my/lang/zh-tw.php b/module/my/lang/zh-tw.php
index b0b6af8c45..8a80a0a272 100644
--- a/module/my/lang/zh-tw.php
+++ b/module/my/lang/zh-tw.php
@@ -22,19 +22,20 @@ $lang->my->dynamic = '我的動態';
$lang->my->team = '團隊';
$lang->my->editProfile = '修改檔案';
$lang->my->changePassword = '修改密碼';
+$lang->my->preference = '個性化設置';
$lang->my->unbind = '解除ZDOO綁定';
$lang->my->manageContacts = '維護聯繫人';
$lang->my->deleteContacts = '刪除聯繫人';
$lang->my->shareContacts = '共享聯繫人列表';
-$lang->my->setStoryConcept = '設置需求概念';
-$lang->my->storyConcept = '需求概念';
$lang->my->limited = '受限操作(只能編輯與自己相關的內容)';
+$lang->my->storyConcept = '預設需求概念組合';
$lang->my->score = '我的積分';
$lang->my->scoreRule = '積分規則';
$lang->my->noTodo = '暫時沒有待辦。';
$lang->my->noData = "暫時沒有%s。";
$lang->my->storyChanged = "需求變更";
$lang->my->hours = '工時/天';
+$lang->my->uploadAvatar = '更換頭像';
$lang->my->myExecutions = "我參與的階段/衝刺/迭代";
$lang->my->name = '名稱';
@@ -54,10 +55,10 @@ $lang->my->taskMenu->closedByMe = '由我關閉';
$lang->my->taskMenu->canceledByMe = '由我取消';
$lang->my->storyMenu = new stdclass();
-$lang->my->storyMenu->assignedToMe = '指給我';
-$lang->my->storyMenu->openedByMe = '我創建';
-$lang->my->storyMenu->reviewedByMe = '我評審';
-$lang->my->storyMenu->closedByMe = '我關閉';
+$lang->my->storyMenu->assignedToMe = '指派給我';
+$lang->my->storyMenu->openedByMe = '由我創建';
+$lang->my->storyMenu->reviewedByMe = '由我評審';
+$lang->my->storyMenu->closedByMe = '由我關閉';
$lang->my->projectMenu = new stdclass();
$lang->my->projectMenu->doing = '進行中';
@@ -80,3 +81,25 @@ $lang->my->form = new stdclass();
$lang->my->form->lblBasic = '基本信息';
$lang->my->form->lblContact = '聯繫信息';
$lang->my->form->lblAccount = '帳號信息';
+
+$lang->my->programLink = '項目集預設着陸頁';
+$lang->my->productLink = '產品預設着陸頁';
+$lang->my->projectLink = '項目預設着陸頁';
+
+$lang->my->programLinkList = array();
+//$lang->my->programLinkList['program-home'] = '預設進入項目集主頁,可以瞭解公司整體的戰略規劃狀況';
+$lang->my->programLinkList['program-pgmbrowse'] = '預設進入項目集列表,可以查看所有的項目集';
+//$lang->my->programLinkList['program-pgmindex'] = '預設進入最近一個項目集儀表盤,可以查看當前項目集概況';
+$lang->my->programLinkList['program-pgmproject'] = '預設進入最近一個項目集的項目列表,可以查看當前項目集下所有項目';
+
+$lang->my->productLinkList = array();
+$lang->my->productLinkList['product-index'] = '預設進入產品主頁,可以瞭解公司整體的產品狀況';
+$lang->my->productLinkList['product-all'] = '預設進入產品列表,可以查看所有的產品';
+$lang->my->productLinkList['product-dashboard'] = '預設進入最近一個產品儀表盤,可以查看當前產品概況';
+$lang->my->productLinkList['product-browse'] = '預設進入最近一個產品的需求列表,可以查看當前產品下的需求信息';
+
+$lang->my->projectLinkList = array();
+//$lang->my->projectLinkList['program-home'] = '預設進入項目主頁,可以瞭解公司整體的項目狀況';
+$lang->my->projectLinkList['program-prjbrowse'] = '預設進入項目列表,可以查看所有的項目';
+$lang->my->projectLinkList['program-index'] = '預設進入最近一個項目儀表盤,可以查看當前項目概況';
+$lang->my->projectLinkList['project-task'] = '預設進入最近一個項目迭代的任務列表,可以查看當前迭代下的任務信息';
diff --git a/module/personnel/lang/zh-tw.php b/module/personnel/lang/zh-tw.php
index 1c4a30ad8d..878229faa4 100644
--- a/module/personnel/lang/zh-tw.php
+++ b/module/personnel/lang/zh-tw.php
@@ -14,7 +14,7 @@ $lang->personnel->role = '角色';
$lang->personnel->name = '人員名稱';
$lang->personnel->projects = '項目數';
-$lang->personnel->executions = '执行';
+$lang->personnel->executions = '執行';
$lang->personnel->workingHours = '工時';
$lang->personnel->task = '任務';
$lang->personnel->bug = 'Bug';
diff --git a/module/product/lang/zh-tw.php b/module/product/lang/zh-tw.php
index 8c7c9e96d0..9d660045cd 100644
--- a/module/product/lang/zh-tw.php
+++ b/module/product/lang/zh-tw.php
@@ -9,28 +9,29 @@
* @version $Id: zh-tw.php 5091 2013-07-10 06:06:46Z chencongzhi520@gmail.com $
* @link http://www.zentao.net
*/
-$lang->product->common = $lang->productCommon . '視圖';
-$lang->product->index = $lang->productCommon . '主頁';
-$lang->product->browse = "{$lang->SRCommon}列表";
-$lang->product->dynamic = '產品動態';
-$lang->product->view = "{$lang->productCommon}概況";
-$lang->product->edit = "編輯{$lang->productCommon}";
-$lang->product->batchEdit = '批量編輯';
-$lang->product->create = "添加{$lang->productCommon}";
-$lang->product->delete = "刪除{$lang->productCommon}";
-$lang->product->deleted = '已刪除';
-$lang->product->close = '關閉';
-$lang->product->closeAction = "關閉{$lang->productCommon}";
-$lang->product->select = "請選擇{$lang->productCommon}";
-$lang->product->mine = '我負責:';
-$lang->product->other = '其他:';
-$lang->product->closed = '已關閉';
-$lang->product->updateOrder = '排序';
-$lang->product->orderAction = "{$lang->productCommon}排序";
-$lang->product->all = "所有{$lang->productCommon}";
-$lang->product->export = '導出數據';
-$lang->product->exportAction = "導出{$lang->productCommon}";
-$lang->product->dashboard = "{$lang->productCommon}儀錶盤";
+$lang->product->common = $lang->productCommon . '視圖';
+$lang->product->index = $lang->productCommon . '主頁';
+$lang->product->browse = "{$lang->SRCommon}列表";
+$lang->product->dynamic = '產品動態';
+$lang->product->view = "{$lang->productCommon}概況";
+$lang->product->edit = "編輯{$lang->productCommon}";
+$lang->product->batchEdit = '批量編輯';
+$lang->product->create = "添加{$lang->productCommon}";
+$lang->product->delete = "刪除{$lang->productCommon}";
+$lang->product->deleted = '已刪除';
+$lang->product->close = '關閉';
+$lang->product->closeAction = "關閉{$lang->productCommon}";
+$lang->product->select = "請選擇{$lang->productCommon}";
+$lang->product->mine = '我負責:';
+$lang->product->other = '其他:';
+$lang->product->closed = '已關閉';
+$lang->product->updateOrder = '排序';
+$lang->product->orderAction = "{$lang->productCommon}排序";
+$lang->product->all = "所有{$lang->productCommon}";
+$lang->product->export = '導出數據';
+$lang->product->exportAction = "導出{$lang->productCommon}";
+$lang->product->dashboard = "{$lang->productCommon}儀表盤";
+$lang->product->changeProgram = "{$lang->productCommon}調整所屬項目集影響範圍確認";
$lang->product->basicInfo = '基本信息';
$lang->product->otherInfo = '其他信息';
@@ -46,6 +47,7 @@ $lang->product->roadmap = "{$lang->productCommon}路線圖";
$lang->product->doc = '文檔列表';
$lang->product->project = $lang->executionCommon . '列表';
$lang->product->build = '版本列表';
+$lang->product->moreProduct = "更多產品";
$lang->product->projectInfo = "所有與此產品關聯的項目";
$lang->product->currentExecution = "當前{$lang->sprintCommon}";
@@ -62,9 +64,12 @@ $lang->product->unResolvedBugsTitle = '未解決Bug';
$lang->product->assignToNullBugs = '未指派Bug';
$lang->product->assignToNullBugsTitle = '未指派Bug';
-$lang->product->confirmDelete = " 您確定刪除該{$lang->productCommon}嗎?";
-$lang->product->errorNoProduct = "還沒有創建{$lang->productCommon}!";
-$lang->product->accessDenied = "您無權訪問該{$lang->productCommon}";
+$lang->product->confirmDelete = " 您確定刪除該{$lang->productCommon}嗎?";
+$lang->product->errorNoProduct = "還沒有創建{$lang->productCommon}!";
+$lang->product->accessDenied = "您無權訪問該{$lang->productCommon}";
+$lang->product->PGMChangeTip = "如下項目只關聯了該{$lang->productCommon}, 將直接轉移至新項目集下。";
+$lang->product->notChangePGMTip = "該{$lang->productCommon}的{$lang->SRCommon}已經關聯到如下項目,請取消關聯後再操作";
+$lang->product->confirmChangePGM = "如下項目既關聯了該{$lang->productCommon}又關聯了其他{$lang->productCommon},請確認是否繼續關聯該{$lang->productCommon},勾選後將取消與其他{$lang->productCommon}的關聯關係,同時轉移至新項目集下。";
$lang->product->id = '編號';
$lang->product->program = "所屬項目集";
@@ -137,7 +142,7 @@ $lang->product->aclList['open'] = "公開(有{$lang->productCommon}視圖權
//$lang->product->aclList['custom'] = '自定義白名單(團隊成員和白名單的成員可以訪問)';
$lang->product->acls['private'] = '私有';
-$lang->product->acls['open'] = '公開';
+$lang->product->acls['open'] = "公開";
$lang->product->aclTips['open'] = "有{$lang->productCommon}視圖權限,即可訪問";
$lang->product->aclTips['private'] = "{$lang->productCommon}相關負責人、所屬項目集的干係人、相關聯項目的團隊成員和干係人可訪問";
@@ -156,7 +161,7 @@ $lang->product->featureBar['browse']['reviewedbyme'] = $lang->product->reviewedB
$lang->product->featureBar['browse']['draftstory'] = $lang->product->draftStory;
$lang->product->featureBar['browse']['more'] = $lang->more;
-$lang->product->featureBar['all']['all'] = $lang->product->allProduct;
+$lang->product->featureBar['all']['all'] = '所有' . $lang->productCommon;
$lang->product->featureBar['all']['noclosed'] = $lang->product->unclosed;
$lang->product->featureBar['all']['closed'] = $lang->product->statusList['closed'];
diff --git a/module/productplan/lang/zh-tw.php b/module/productplan/lang/zh-tw.php
index c9c5c45a14..574c54c19a 100644
--- a/module/productplan/lang/zh-tw.php
+++ b/module/productplan/lang/zh-tw.php
@@ -19,6 +19,7 @@ $lang->productplan->view = "計劃詳情";
$lang->productplan->bugSummary = "本頁共 %s 個Bug";
$lang->productplan->basicInfo = '基本信息';
$lang->productplan->batchEdit = '批量編輯';
+$lang->productplan->project = '項目';
$lang->productplan->batchUnlink = "批量移除";
$lang->productplan->linkStory = "關聯{$lang->SRCommon}";
@@ -29,20 +30,23 @@ $lang->productplan->linkedStories = $lang->SRCommon;
$lang->productplan->unlinkedStories = "未關聯{$lang->SRCommon}";
$lang->productplan->updateOrder = '排序';
$lang->productplan->createChildren = "創建子計劃";
+$lang->productplan->createExecution = "創建{$lang->sprintCommon}";
$lang->productplan->linkBug = "關聯Bug";
$lang->productplan->unlinkBug = "移除Bug";
$lang->productplan->batchUnlinkBug = "批量移除Bug";
$lang->productplan->linkedBugs = 'Bug';
$lang->productplan->unlinkedBugs = '未關聯Bug';
-$lang->productplan->unexpired = '未過期計劃';
-$lang->productplan->all = '所有計劃';
+$lang->productplan->unexpired = "未過期計劃";
+$lang->productplan->all = "所有計劃";
$lang->productplan->confirmDelete = "您確認刪除該計劃嗎?";
$lang->productplan->confirmUnlinkStory = "您確認移除該{$lang->SRCommon}嗎?";
$lang->productplan->confirmUnlinkBug = "您確認移除該Bug嗎?";
-$lang->productplan->noPlan = '暫時沒有計劃。';
-$lang->productplan->cannotDeleteParent = '不能刪除父計劃';
+$lang->productplan->noPlan = "暫時沒有計劃。";
+$lang->productplan->cannotDeleteParent = "不能刪除父計劃";
+$lang->productplan->selectProjects = "請選擇所屬項目";
+$lang->productplan->nextStep = "下一步";
$lang->productplan->id = '編號';
$lang->productplan->product = $lang->productCommon;
@@ -51,9 +55,9 @@ $lang->productplan->title = '名稱';
$lang->productplan->desc = '描述';
$lang->productplan->begin = '開始日期';
$lang->productplan->end = '結束日期';
-$lang->productplan->last = '上次計劃';
+$lang->productplan->last = "上次計劃";
$lang->productplan->future = '待定';
-$lang->productplan->stories = "{$lang->SRCommon}數";
+$lang->productplan->stories = "需求數";
$lang->productplan->bugs = 'Bug數';
$lang->productplan->hour = $lang->hourCommon;
$lang->productplan->execution = $lang->executionCommon;
diff --git a/module/program/lang/zh-tw.php b/module/program/lang/zh-tw.php
index f69d1d7930..736aec9f8d 100644
--- a/module/program/lang/zh-tw.php
+++ b/module/program/lang/zh-tw.php
@@ -5,6 +5,7 @@ $lang->program->PRJIndex = '項目儀表盤';
$lang->program->PRJHome = '項目主頁';
$lang->program->PRJCreate = '創建項目';
$lang->program->PRJEdit = '編輯項目';
+$lang->program->PRJView = '項目概況';
$lang->program->PRJBatchEdit = '批量編輯';
$lang->program->PRJBrowse = '項目列表';
$lang->program->PRJAll = '所有項目';
@@ -87,6 +88,7 @@ $lang->program->cv = 'CV%';
$lang->program->PRJTeamCount = '項目成員';
$lang->program->PRJLongTime = '長期';
$lang->program->future = '待定';
+$lang->program->morePRJ = '更多項目';
$lang->program->productNotEmpty = '請關聯產品或創建產品。';
$lang->program->existProductName = '產品名稱已存在。';
@@ -168,7 +170,7 @@ $lang->program->noPRJ = '暫時沒有項目';
$lang->program->accessDenied = '您無權訪問該項目!';
$lang->program->chooseProgramType = '選中項目管理模型';
$lang->program->nextStep = '下一步';
-$lang->program->hoursUnit = '%s工時';
+$lang->program->hoursUnit = "%s 工時";
$lang->program->membersUnit = '%s人';
$lang->program->lastIteration = '近期迭代';
$lang->program->ongoingStage = '進行中的階段';
@@ -227,6 +229,7 @@ $lang->program->PGMStakeholder = '干係人列表';
$lang->program->createStakeholder = '添加干係人';
$lang->program->unlinkStakeholder = '移除干係人';
$lang->program->unlink = '移除';
+$lang->program->morePGM = '更多項目集';
$lang->program->confirmBatchUnlink = "您確定要批量移除這些干係人嗎?";
$lang->program->stakeholderType = '干係人類型';
$lang->program->isStakeholderKey = '關鍵干係人';
diff --git a/module/programplan/lang/zh-tw.php b/module/programplan/lang/zh-tw.php
index d9115a18d8..fb61f5ea6f 100644
--- a/module/programplan/lang/zh-tw.php
+++ b/module/programplan/lang/zh-tw.php
@@ -1,12 +1,12 @@
* @package programplan
- * @version $Id: zh-cn.php 4729 2013-05-03 07:53:55Z chencongzhi520@gmail.com $
+ * @version $Id: zh-tw.php 4729 2013-05-03 07:53:55Z chencongzhi520@gmail.com $
* @link http://www.zentao.net
*/
$lang->programplan->common = '項目計劃';
@@ -33,7 +33,7 @@ $lang->programplan->begin = '計劃開始';
$lang->programplan->end = '計劃完成';
$lang->programplan->realBegan = '實際開始';
$lang->programplan->realEnd = '實際完成';
-$lang->programplan->planDateRange = '計劃起始日期';
+$lang->programplan->planDateRange = '計划起始日期';
$lang->programplan->realDateRange = '實際起始日期';
$lang->programplan->output = '輸出';
$lang->programplan->openedBy = '由誰創建';
@@ -56,7 +56,7 @@ $lang->programplan->noData = '暫無數據。';
$lang->programplan->children = '二級計劃';
$lang->programplan->childrenAB = '子';
$lang->programplan->confirmDelete = '確定要刪除當前計劃嗎?';
-$lang->programplan->workloadTips = '子階段工作量佔比按百分百的比例進行拆分';
+$lang->programplan->workloadTips = '子階段工作量占比按百分百的比例進行拆分';
$lang->programplan->stageCustom = new stdClass();
$lang->programplan->stageCustom->date = '顯示日期';
diff --git a/module/project/lang/zh-tw.php b/module/project/lang/zh-tw.php
index a7aec57e1a..12d2f128a0 100644
--- a/module/project/lang/zh-tw.php
+++ b/module/project/lang/zh-tw.php
@@ -10,74 +10,77 @@
* @link http://www.zentao.net
*/
/* 欄位列表。*/
-$lang->project->common = $lang->executionCommon . '視圖';
-$lang->project->allProjects = '所有' . $lang->executionCommon;
-$lang->project->id = $lang->executionCommon . '編號';
-$lang->project->type = $lang->executionCommon . '類型';
-$lang->project->name = $lang->executionCommon . '名稱';
-$lang->project->code = $lang->executionCommon . '代號';
-$lang->project->statge = '階段';
-$lang->project->pri = '優先順序';
-$lang->project->openedBy = '由誰創建';
-$lang->project->openedDate = '創建日期';
-$lang->project->closedBy = '由誰關閉';
-$lang->project->closedDate = '關閉日期';
-$lang->project->canceledBy = '由誰取消';
-$lang->project->canceledDate = '取消日期';
-$lang->project->begin = '開始日期';
-$lang->project->end = '結束日期';
-$lang->project->dateRange = '起始日期';
-$lang->project->to = '至';
-$lang->project->days = '可用工作日';
-$lang->project->day = '天';
-$lang->project->workHour = '工時';
-$lang->project->workHourUnit = 'H';
-$lang->project->totalHours = '可用工時';
-$lang->project->totalDays = '可用工日';
-$lang->project->status = $lang->executionCommon . '狀態';
-$lang->project->subStatus = '子狀態';
-$lang->project->desc = $lang->executionCommon . '描述';
-$lang->project->owner = '負責人';
-$lang->project->PO = $lang->productCommon . '負責人';
-$lang->project->PM = $lang->executionCommon . '負責人';
-$lang->project->QD = '測試負責人';
-$lang->project->RD = '發佈負責人';
-$lang->project->qa = '測試';
-$lang->project->release = '發佈';
-$lang->project->acl = '訪問控制';
-$lang->project->teamname = '團隊名稱';
-$lang->project->order = $lang->executionCommon . '排序';
-$lang->project->orderAB = '排序';
-$lang->project->products = '相關' . $lang->productCommon;
-$lang->project->whitelist = '白名單';
-$lang->project->addWhitelist = '添加白名單';
+$lang->project->common = $lang->executionCommon . '視圖';
+$lang->project->allProjects = '所有' . $lang->executionCommon;
+$lang->project->id = $lang->executionCommon . '編號';
+$lang->project->type = $lang->executionCommon . '類型';
+$lang->project->name = $lang->executionCommon . '名稱';
+$lang->project->code = $lang->executionCommon . '代號';
+$lang->project->statge = '階段';
+$lang->project->pri = '優先順序';
+$lang->project->openedBy = '由誰創建';
+$lang->project->openedDate = '創建日期';
+$lang->project->closedBy = '由誰關閉';
+$lang->project->closedDate = '關閉日期';
+$lang->project->canceledBy = '由誰取消';
+$lang->project->canceledDate = '取消日期';
+$lang->project->begin = '開始日期';
+$lang->project->end = '結束日期';
+$lang->project->dateRange = '起始日期';
+$lang->project->to = '至';
+$lang->project->days = '可用工作日';
+$lang->project->day = '天';
+$lang->project->workHour = '工時';
+$lang->project->workHourUnit = 'H';
+$lang->project->totalHours = '可用工時';
+$lang->project->totalDays = '可用工日';
+$lang->project->status = $lang->executionCommon . '狀態';
+$lang->project->subStatus = '子狀態';
+$lang->project->desc = $lang->executionCommon . '描述';
+$lang->project->owner = '負責人';
+$lang->project->PO = $lang->productCommon . '負責人';
+$lang->project->PM = $lang->executionCommon . '負責人';
+$lang->project->QD = '測試負責人';
+$lang->project->RD = '發佈負責人';
+$lang->project->qa = '測試';
+$lang->project->release = '發佈';
+$lang->project->acl = '訪問控制';
+$lang->project->teamname = '團隊名稱';
+$lang->project->order = $lang->executionCommon . '排序';
+$lang->project->orderAB = '排序';
+$lang->project->products = '相關' . $lang->productCommon;
+$lang->project->whitelist = '白名單';
+$lang->project->addWhitelist = '添加白名單';
$lang->project->unbindWhielist = '刪除白名單';
-$lang->project->totalEstimate = '預計';
-$lang->project->totalConsumed = '消耗';
-$lang->project->totalLeft = '剩餘';
-$lang->project->progress = '進度';
-$lang->project->hours = '預計 %s 消耗 %s 剩餘 %s';
-$lang->project->viewBug = '查看bug';
-$lang->project->noProduct = "無{$lang->productCommon}{$lang->executionCommon}";
-$lang->project->createStory = "添加{$lang->SRCommon}";
-$lang->project->all = '所有';
-$lang->project->undone = '未完成';
-$lang->project->unclosed = '未關閉';
-$lang->project->typeDesc = "運維{$lang->executionCommon}沒有{$lang->SRCommon}、bug、版本、測試功能。";
-$lang->project->mine = '我負責:';
-$lang->project->other = '其他:';
-$lang->project->deleted = '已刪除';
-$lang->project->delayed = '已延期';
-$lang->project->product = $lang->project->products;
-$lang->project->readjustTime = "調整{$lang->executionCommon}起止時間";
-$lang->project->readjustTask = '順延任務的起止時間';
-$lang->project->effort = '日誌';
-$lang->project->relatedMember = '相關成員';
-$lang->project->watermark = '由禪道導出';
-$lang->project->burnXUnit = '(日期)';
-$lang->project->burnYUnit = '(工時)';
-$lang->project->waitTasks = '待處理';
-$lang->project->viewByUser = '按用戶查看';
+$lang->project->totalEstimate = '預計';
+$lang->project->totalConsumed = '消耗';
+$lang->project->totalLeft = '剩餘';
+$lang->project->progress = '進度';
+$lang->project->hours = '預計 %s 消耗 %s 剩餘 %s';
+$lang->project->viewBug = '查看bug';
+$lang->project->noProduct = "無{$lang->executionCommon}";
+$lang->project->createStory = "添加{$lang->SRCommon}";
+$lang->project->storyTitle = "{$lang->SRCommon}名稱";
+$lang->project->all = '所有';
+$lang->project->undone = '未完成';
+$lang->project->unclosed = '未關閉';
+$lang->project->typeDesc = "運維{$lang->executionCommon}沒有{$lang->SRCommon}、bug、版本、測試功能。";
+$lang->project->mine = '我負責:';
+$lang->project->other = '其他:';
+$lang->project->deleted = '已刪除';
+$lang->project->delayed = '已延期';
+$lang->project->product = $lang->project->products;
+$lang->project->readjustTime = "調整{$lang->executionCommon}起止時間";
+$lang->project->readjustTask = '順延任務的起止時間';
+$lang->project->effort = '日誌';
+$lang->project->relatedMember = '相關成員';
+$lang->project->watermark = '由禪道導出';
+$lang->project->burnXUnit = '(日期)';
+$lang->project->burnYUnit = '(工時)';
+$lang->project->waitTasks = '待處理';
+$lang->project->viewByUser = '按用戶查看';
+$lang->project->oneProduct = "階段只能關聯一個{$lang->productCommon}";
+$lang->project->noLinkProduct = "階段沒有關聯{$lang->productCommon}";
$lang->project->start = "開始";
$lang->project->activate = "激活";
@@ -121,7 +124,7 @@ $lang->project->aclList['open'] = "繼承項目訪問權限(能訪問當前
$lang->project->storyPoint = '故事點';
$lang->project->burnByList['left'] = '按剩餘工時查看';
-$lang->project->burnByList['estimate'] = "按计划工時查看";
+$lang->project->burnByList['estimate'] = "按計劃工時查看";
$lang->project->burnByList['storyPoint'] = '按故事點查看';
/* 方法列表。*/
@@ -143,8 +146,8 @@ $lang->project->doc = '文檔列表';
$lang->project->doclib = '文檔庫列表';
$lang->project->manageProducts = '關聯' . $lang->productCommon;
$lang->project->linkStory = "關聯{$lang->SRCommon}";
-$lang->project->linkStoryByPlan = '按照計劃關聯';
-$lang->project->linkPlan = '關聯計劃';
+$lang->project->linkStoryByPlan = "按照計劃關聯";
+$lang->project->linkPlan = "關聯計劃";
$lang->project->unlinkStoryTasks = "未關聯{$lang->SRCommon}任務";
$lang->project->linkedProducts = '已關聯';
$lang->project->unlinkedProducts = '未關聯';
@@ -228,7 +231,7 @@ $lang->project->aboveAllProject = "以上所有{$lang->executionCommon}";
/* 頁面提示。*/
$lang->project->linkStoryByPlanTips = "此操作會將所選計划下面的{$lang->SRCommon}全部關聯到此{$lang->executionCommon}中";
$lang->project->selectProject = "請選擇{$lang->executionCommon}";
-$lang->project->selectExecution = "請選擇執行";
+$lang->project->selectExecution = "請選擇階段/迭代/衝刺";
$lang->project->beginAndEnd = '起止時間';
$lang->project->begin = '開始日期';
$lang->project->end = '截止日期';
@@ -263,6 +266,9 @@ $lang->project->byPeriod = '按時間段';
$lang->project->byUser = '按用戶';
$lang->project->noProject = "暫時沒有{$lang->executionCommon}。";
$lang->project->noMembers = '暫時沒有團隊成員。';
+$lang->project->workloadTotal = "工作量占比累計不應當超過100, 當前產品下的工作量之和為%s";
+$lang->project->linkPRJStoryTip = "(關聯{$lang->SRCommon}來源於項目下所關聯的{$lang->SRCommon})";
+$lang->project->linkAllStoryTip = "(項目下還未關聯{$lang->SRCommon},可直接關聯該迭代/階段/衝刺所關聯產品的{$lang->SRCommon})";
/* 交互提示。*/
$lang->project->confirmDelete = "您確定刪除{$lang->executionCommon}[%s]嗎?";
@@ -372,3 +378,10 @@ $lang->project->treeLevel['all'] = '全部展開';
$lang->project->treeLevel['root'] = '全部摺疊';
$lang->project->treeLevel['task'] = '全部顯示';
$lang->project->treeLevel['story'] = "只看{$lang->SRCommon}";
+
+$lang->execution->action = new stdclass();
+$lang->execution->action->opened = '$date, 由 $actor 創建。$extra' . "\n";
+$lang->execution->action->managed = '$date, 由 $actor 維護。$extra' . "\n";
+$lang->execution->action->edited = '$date, 由 $actor 編輯。$extra' . "\n";
+$lang->execution->action->extra = '相關產品為 %s。';
+
diff --git a/module/projectbuild/lang/zh-tw.php b/module/projectbuild/lang/zh-tw.php
new file mode 100644
index 0000000000..5aba86e958
--- /dev/null
+++ b/module/projectbuild/lang/zh-tw.php
@@ -0,0 +1,5 @@
+projectbuild->common = '項目版本';
+$lang->projectbuild->browse = '版本列表';
+
+$lang->projectbuild->project = "請選擇所屬{$lang->executionCommon}";
diff --git a/module/projectrelease/lang/zh-tw.php b/module/projectrelease/lang/zh-tw.php
index 3e22e6138a..1af64da7db 100644
--- a/module/projectrelease/lang/zh-tw.php
+++ b/module/projectrelease/lang/zh-tw.php
@@ -1,15 +1,15 @@
* @package release
- * @version $Id: zh-cn.php 4129 2020-11-27 01:58:14Z wwccss $
+ * @version $Id: zh-tw.php 4129 2020-11-27 01:58:14Z wwccss $
* @link http://www.zentao.net
*/
-$lang->projectrelease->common = '發佈';
+$lang->projectrelease->common = '項目發佈';
$lang->projectrelease->create = "創建發佈";
$lang->projectrelease->edit = "編輯發佈";
$lang->projectrelease->linkStory = "關聯{$lang->SRCommon}";
@@ -22,4 +22,6 @@ $lang->projectrelease->changeStatus = "修改狀態";
$lang->projectrelease->batchUnlink = "批量移除";
$lang->projectrelease->batchUnlinkStory = "批量移除{$lang->SRCommon}";
$lang->projectrelease->batchUnlinkBug = "批量移除Bug";
+$lang->projectrelease->unlinkStory = "移除{$lang->SRCommon}";
+$lang->projectrelease->unlinkBug = '移除Bug';
$lang->projectrelease->export = '導出HTML';
diff --git a/module/repo/lang/zh-tw.php b/module/repo/lang/zh-tw.php
index c7f0e7abaf..208a56f40f 100644
--- a/module/repo/lang/zh-tw.php
+++ b/module/repo/lang/zh-tw.php
@@ -2,6 +2,7 @@
$lang->repo->common = '代碼';
$lang->repo->browse = '瀏覽';
$lang->repo->viewRevision = '查看修訂';
+$lang->repo->product = '所屬產品';
$lang->repo->create = '創建';
$lang->repo->createAction = '創建版本庫';
$lang->repo->maintain = '版本庫列表';
@@ -27,9 +28,7 @@ $lang->repo->submit = '提交';
$lang->repo->cancel = '取消';
$lang->repo->addComment = '添加評論';
-$lang->repo->product = $lang->productCommon;
$lang->repo->module = '模組';
-$lang->repo->project = $lang->executionCommon;
$lang->repo->type = '類型';
$lang->repo->assign = '指派';
$lang->repo->title = '標題';
@@ -159,6 +158,7 @@ $lang->repo->error->noPriv = '程序沒有權限切換到目錄 %s';
$lang->repo->error->output = "執行命令:%s\n錯誤結果(%s): %s\n";
$lang->repo->error->clientVersion = "客戶端版本過低,請升級或更換SVN客戶端";
$lang->repo->error->encoding = "編碼可能錯誤,請更換編碼重試。";
+$lang->repo->error->deleted = "刪除版本庫失敗,當前版本庫有提交記錄與設計關聯";
$lang->repo->error->clientPath = "客戶端安裝目錄不能有空格!";
$lang->repo->syncTips = '請參照這裡,設置版本庫定時同步。';
diff --git a/module/report/lang/de.php b/module/report/lang/de.php
index 71cc76a275..4cc7719ed8 100644
--- a/module/report/lang/de.php
+++ b/module/report/lang/de.php
@@ -48,6 +48,12 @@ $lang->report->beginAndEnd = ' : von';
$lang->report->dept = 'Abteilung';
$lang->report->deviationChart = $lang->executionCommon . ' Abweichnungs Chart';
+$lang->reportList = new stdclass();
+$lang->reportList->project = new stdclass();
+$lang->reportList->product = new stdclass();
+$lang->reportList->test = new stdclass();
+$lang->reportList->staff = new stdclass();
+
$lang->reportList->project->lists[10] = $lang->executionCommon . ' Abweichnung|report|projectdeviation';
$lang->reportList->product->lists[10] = $lang->productCommon . ' Zusammenfassung|report|productsummary';
$lang->reportList->test->lists[10] = 'Bugs gemeldet|report|bugcreate';
diff --git a/module/report/lang/en.php b/module/report/lang/en.php
index 397afe9985..a236ae477e 100644
--- a/module/report/lang/en.php
+++ b/module/report/lang/en.php
@@ -48,6 +48,12 @@ $lang->report->beginAndEnd = ' From';
$lang->report->dept = 'Department';
$lang->report->deviationChart = $lang->executionCommon . ' Deviation Chart';
+$lang->reportList = new stdclass();
+$lang->reportList->project = new stdclass();
+$lang->reportList->product = new stdclass();
+$lang->reportList->test = new stdclass();
+$lang->reportList->staff = new stdclass();
+
$lang->reportList->project->lists[10] = $lang->executionCommon . ' Deviation|report|projectdeviation';
$lang->reportList->product->lists[10] = $lang->productCommon . ' Summary|report|productsummary';
$lang->reportList->test->lists[10] = 'Bug Reported Summary|report|bugcreate';
diff --git a/module/report/lang/fr.php b/module/report/lang/fr.php
index ac96dd7c14..5df2b667ef 100644
--- a/module/report/lang/fr.php
+++ b/module/report/lang/fr.php
@@ -48,6 +48,12 @@ $lang->report->beginAndEnd = ' de';
$lang->report->dept = 'Compartiment';
$lang->report->deviationChart = 'Graphique de Dérive du ' . $lang->executionCommon;
+$lang->reportList = new stdclass();
+$lang->reportList->project = new stdclass();
+$lang->reportList->product = new stdclass();
+$lang->reportList->test = new stdclass();
+$lang->reportList->staff = new stdclass();
+
$lang->reportList->project->lists[10] = 'Dérive ' . $lang->executionCommon . '|report|projectdeviation';
$lang->reportList->product->lists[10] = 'Résumé ' . $lang->productCommon . '|report|productsummary';
$lang->reportList->test->lists[10] = 'Résumé remontée Bugs|report|bugcreate';
diff --git a/module/report/lang/vi.php b/module/report/lang/vi.php
index fb12b54b40..dc1b8e2a42 100644
--- a/module/report/lang/vi.php
+++ b/module/report/lang/vi.php
@@ -48,6 +48,12 @@ $lang->report->beginAndEnd = ' từ';
$lang->report->dept = 'Phòng/Ban';
$lang->report->deviationChart = 'Biểu đồ chênh lệch '.$lang->executionCommon;
+$lang->reportList = new stdclass();
+$lang->reportList->project = new stdclass();
+$lang->reportList->product = new stdclass();
+$lang->reportList->test = new stdclass();
+$lang->reportList->staff = new stdclass();
+
$lang->reportList->project->lists[10] = 'Chênh lệch '.$lang->executionCommon . '|report|projectdeviation';
$lang->reportList->product->lists[10] = 'Tóm tắt '.$lang->productCommon . '|report|productsummary';
$lang->reportList->test->lists[10] = 'Báo cáo Bug|report|bugcreate';
diff --git a/module/report/lang/zh-cn.php b/module/report/lang/zh-cn.php
index 87843b3811..15ba3b388d 100644
--- a/module/report/lang/zh-cn.php
+++ b/module/report/lang/zh-cn.php
@@ -48,6 +48,12 @@ $lang->report->beginAndEnd = '起止时间';
$lang->report->dept = '部门';
$lang->report->deviationChart = $lang->executionCommon . '偏差曲线';
+$lang->reportList = new stdclass();
+$lang->reportList->project = new stdclass();
+$lang->reportList->product = new stdclass();
+$lang->reportList->test = new stdclass();
+$lang->reportList->staff = new stdclass();
+
$lang->reportList->project->lists[10] = $lang->executionCommon . '偏差报表|report|projectdeviation';
$lang->reportList->product->lists[10] = $lang->productCommon . '汇总表|report|productsummary';
$lang->reportList->test->lists[10] = 'Bug创建表|report|bugcreate';
diff --git a/module/report/lang/zh-tw.php b/module/report/lang/zh-tw.php
index a7c47366d1..cd4f7eb835 100644
--- a/module/report/lang/zh-tw.php
+++ b/module/report/lang/zh-tw.php
@@ -48,6 +48,12 @@ $lang->report->beginAndEnd = '起止時間';
$lang->report->dept = '部門';
$lang->report->deviationChart = $lang->executionCommon . '偏差曲綫';
+$lang->reportList = new stdclass();
+$lang->reportList->project = new stdclass();
+$lang->reportList->product = new stdclass();
+$lang->reportList->test = new stdclass();
+$lang->reportList->staff = new stdclass();
+
$lang->reportList->project->lists[10] = $lang->executionCommon . '偏差報表|report|projectdeviation';
$lang->reportList->product->lists[10] = $lang->productCommon . '彙總表|report|productsummary';
$lang->reportList->test->lists[10] = 'Bug創建表|report|bugcreate';
@@ -71,7 +77,7 @@ $lang->report->taskTotal = "總任務數";
$lang->report->manhourTotal = "總工時";
$lang->report->validRate = "有效率";
$lang->report->validRateTips = "方案為已解決或延期/狀態為已解決或已關閉";
-$lang->report->unplanned = '未計劃';
+$lang->report->unplanned = "未計劃";
$lang->report->workday = '每天工時';
$lang->report->diffDays = '工作日天數';
@@ -82,7 +88,7 @@ $lang->report->typeList['line'] = '折線圖';
$lang->report->conditions = '篩選條件:';
$lang->report->closedProduct = '關閉' . $lang->productCommon;
-$lang->report->overduePlan = '過期計劃';
+$lang->report->overduePlan = "過期計劃";
/* daily reminder. */
$lang->report->idAB = 'ID';
@@ -128,7 +134,7 @@ $lang->report->annualData->finishedTask = '完成任務數';
$lang->report->annualData->foundBug = '創建Bug數';
$lang->report->annualData->resolvedBug = '解決Bug數';
$lang->report->annualData->productName = "{$lang->productCommon}名稱";
-$lang->report->annualData->planCount = '計劃數';
+$lang->report->annualData->planCount = "計劃數";
$lang->report->annualData->storyCount = "{$lang->SRCommon}數";
$lang->report->annualData->qaData = "累計創建Bug數和創建用例數";
diff --git a/module/score/lang/zh-tw.php b/module/score/lang/zh-tw.php
index 7738eb580a..a0c2598764 100644
--- a/module/score/lang/zh-tw.php
+++ b/module/score/lang/zh-tw.php
@@ -74,7 +74,7 @@ $lang->score->methods['testcase']['create'] = '創建用例';
$lang->score->methods['build']['create'] = '創建版本';
$lang->score->methods['project']['create'] = '創建項目';
$lang->score->methods['project']['close'] = '項目完成';
-$lang->score->methods['productplan']['create'] = '創建計劃';
+$lang->score->methods['productplan']['create'] = "創建計劃";
$lang->score->methods['release']['create'] = '創建發佈';
$lang->score->methods['block']['set'] = '區塊自定義設置';
$lang->score->methods['search']['saveQuery'] = '保存搜索條件';
diff --git a/module/search/lang/zh-tw.php b/module/search/lang/zh-tw.php
index f13ff36da0..1cb64283b7 100644
--- a/module/search/lang/zh-tw.php
+++ b/module/search/lang/zh-tw.php
@@ -1,12 +1,12 @@
* @package search
- * @version $Id: zh-cn.php 4129 2013-01-18 01:58:14Z wwccss $
+ * @version $Id: zh-tw.php 4129 2013-01-18 01:58:14Z wwccss $
* @link http://www.zentao.net
*/
$lang->search->common = '搜索';
@@ -96,5 +96,5 @@ $lang->search->objectTypeList['story'] = $lang->SRCommon;
$lang->search->objectTypeList['requirement'] = $lang->URCommon;
$lang->search->objectTypeList['stage'] = $lang->execution->stage;
$lang->search->objectTypeList['sprint'] = $lang->executionCommon;
-$lang->search->objectTypeList['commonIssue'] = '问题';
-$lang->search->objectTypeList['stakeholderIssue'] = '干系人问题';
+$lang->search->objectTypeList['commonIssue'] = '問題';
+$lang->search->objectTypeList['stakeholderIssue'] = '干係人問題';
diff --git a/module/stage/lang/zh-tw.php b/module/stage/lang/zh-tw.php
index 682067b1a8..e4e73d5f49 100644
--- a/module/stage/lang/zh-tw.php
+++ b/module/stage/lang/zh-tw.php
@@ -10,7 +10,7 @@
* @link http://www.zentao.net
*/
/* Actions. */
-$lang->stage->browse = '瀏覽列表';
+$lang->stage->browse = '階段列表';
$lang->stage->create = '新建';
$lang->stage->batchCreate = '批量新建';
$lang->stage->edit = '編輯';
@@ -22,8 +22,8 @@ $lang->stage->common = '階段';
$lang->stage->id = '編號';
$lang->stage->name = '階段名稱';
$lang->stage->type = '階段分類';
-$lang->stage->percent = '工作量比例';
-$lang->stage->setType = '設置類型';
+$lang->stage->percent = '工作量占比';
+$lang->stage->setType = '階段類型';
$lang->stage->typeList['request'] = '需求';
$lang->stage->typeList['design'] = '設計';
diff --git a/module/story/lang/zh-tw.php b/module/story/lang/zh-tw.php
index afa9b44b5f..0e7a7c44db 100644
--- a/module/story/lang/zh-tw.php
+++ b/module/story/lang/zh-tw.php
@@ -14,67 +14,67 @@ $lang->story->create = "提{$lang->SRCommon}";
$lang->story->createStory = "提{$lang->SRCommon}";
$lang->story->createRequirement = "提{$lang->SRCommon}";
-$lang->story->requirement = zget($lang, 'productURCommon', "用戶需求");
-$lang->story->story = zget($lang, 'productSRCommon', "軟件需求");
+$lang->story->requirement = zget($lang, 'URCommon', "需求");
+$lang->story->story = zget($lang, 'SRCommon', "故事");
$lang->story->createStory = '添加' . $lang->story->story;
$lang->story->createRequirement = '添加' . $lang->story->requirement;
$lang->story->affectedStories = "影響的{$lang->story->story}";
-$lang->story->batchCreate = "批量創建";
-$lang->story->change = "變更";
-$lang->story->changeAction = "變更{$lang->SRCommon}";
-$lang->story->changed = "{$lang->SRCommon}變更";
-$lang->story->assignTo = '指派';
-$lang->story->assignAction = "指派{$lang->SRCommon}";
-$lang->story->review = '評審';
-$lang->story->reviewAction = "評審{$lang->SRCommon}";
-$lang->story->needReview = '需要評審';
-$lang->story->batchReview = '批量評審';
-$lang->story->edit = "編輯";
-$lang->story->batchEdit = "批量編輯";
-$lang->story->subdivide = '細分';
-$lang->story->link = '關聯';
-$lang->story->unlink = '移除';
-$lang->story->track = '跟蹤矩陣';
-$lang->story->processStoryChange= '處理需求變更';
-$lang->story->subdivideAction = "細分{$lang->SRCommon}";
-$lang->story->splitRequirent = '拆分';
-$lang->story->close = '關閉';
-$lang->story->closeAction = "關閉{$lang->SRCommon}";
-$lang->story->batchClose = '批量關閉';
-$lang->story->activate = '激活';
-$lang->story->activateAction = "激活{$lang->SRCommon}";
-$lang->story->delete = "刪除";
-$lang->story->deleteAction = "刪除{$lang->SRCommon}";
-$lang->story->view = "{$lang->SRCommon}詳情";
-$lang->story->setting = "設置";
-$lang->story->tasks = "相關任務";
-$lang->story->bugs = "相關Bug";
-$lang->story->cases = "相關用例";
-$lang->story->taskCount = '任務數';
-$lang->story->bugCount = 'Bug數';
-$lang->story->caseCount = '用例數';
-$lang->story->taskCountAB = 'T';
-$lang->story->bugCountAB = 'B';
-$lang->story->caseCountAB = 'C';
-$lang->story->linkStory = "關聯{$lang->SRCommon}";
-$lang->story->unlinkStory = "移除相關{$lang->SRCommon}";
-$lang->story->export = "導出數據";
-$lang->story->exportAction = "導出{$lang->SRCommon}";
-$lang->story->zeroCase = "零用例{$lang->SRCommon}";
-$lang->story->zeroTask = "只列零任務{$lang->SRCommon}";
-$lang->story->reportChart = "統計報表";
-$lang->story->reportAction = "統計報表";
-$lang->story->copyTitle = "同{$lang->SRCommon}名稱";
-$lang->story->batchChangePlan = "批量修改計劃";
-$lang->story->batchChangeBranch = "批量修改分支";
-$lang->story->batchChangeStage = "批量修改階段";
-$lang->story->batchAssignTo = "批量指派";
-$lang->story->batchChangeModule = "批量修改模組";
-$lang->story->viewAll = '查看全部';
-$lang->story->toTask = '轉任務';
-$lang->story->batchToTask = '批量轉任務';
-$lang->story->convertRelations = '換算關係';
+$lang->story->batchCreate = "批量創建";
+$lang->story->change = "變更";
+$lang->story->changeAction = "變更{$lang->SRCommon}";
+$lang->story->changed = "{$lang->SRCommon}變更";
+$lang->story->assignTo = '指派';
+$lang->story->assignAction = "指派{$lang->SRCommon}";
+$lang->story->review = '評審';
+$lang->story->reviewAction = "評審{$lang->SRCommon}";
+$lang->story->needReview = '需要評審';
+$lang->story->batchReview = '批量評審';
+$lang->story->edit = "編輯";
+$lang->story->batchEdit = "批量編輯";
+$lang->story->subdivide = '細分';
+$lang->story->link = '關聯';
+$lang->story->unlink = '移除';
+$lang->story->track = '跟蹤矩陣';
+$lang->story->processStoryChange = '處理需求變更';
+$lang->story->subdivideAction = "細分{$lang->SRCommon}";
+$lang->story->splitRequirent = '拆分';
+$lang->story->close = '關閉';
+$lang->story->closeAction = "關閉{$lang->SRCommon}";
+$lang->story->batchClose = '批量關閉';
+$lang->story->activate = '激活';
+$lang->story->activateAction = "激活{$lang->SRCommon}";
+$lang->story->delete = "刪除";
+$lang->story->deleteAction = "刪除{$lang->SRCommon}";
+$lang->story->view = "{$lang->SRCommon}詳情";
+$lang->story->setting = "設置";
+$lang->story->tasks = "相關任務";
+$lang->story->bugs = "相關Bug";
+$lang->story->cases = "相關用例";
+$lang->story->taskCount = '任務數';
+$lang->story->bugCount = 'Bug數';
+$lang->story->caseCount = '用例數';
+$lang->story->taskCountAB = 'T';
+$lang->story->bugCountAB = 'B';
+$lang->story->caseCountAB = 'C';
+$lang->story->linkStory = "關聯{$lang->SRCommon}";
+$lang->story->unlinkStory = "移除相關{$lang->SRCommon}";
+$lang->story->export = "導出數據";
+$lang->story->exportAction = "導出{$lang->SRCommon}";
+$lang->story->zeroCase = "零用例{$lang->SRCommon}";
+$lang->story->zeroTask = "只列零任務{$lang->SRCommon}";
+$lang->story->reportChart = "統計報表";
+$lang->story->reportAction = "統計報表";
+$lang->story->copyTitle = "同{$lang->SRCommon}名稱";
+$lang->story->batchChangePlan = "批量修改計劃";
+$lang->story->batchChangeBranch = "批量修改分支";
+$lang->story->batchChangeStage = "批量修改階段";
+$lang->story->batchAssignTo = "批量指派";
+$lang->story->batchChangeModule = "批量修改模組";
+$lang->story->viewAll = '查看全部';
+$lang->story->toTask = '轉任務';
+$lang->story->batchToTask = '批量轉任務';
+$lang->story->convertRelations = '換算關係';
$lang->story->skipStory = '需求:%s 為父需求,將不會被關閉。';
$lang->story->closedStory = '需求:%s 已關閉,將不會被關閉。';
@@ -93,7 +93,7 @@ $lang->story->source = "來源";
$lang->story->sourceNote = '來源備註';
$lang->story->fromBug = '來源Bug';
$lang->story->title = "{$lang->SRCommon}名稱";
-$lang->story->type = "{$lang->SRCommon}類型";
+$lang->story->type = "類型";
$lang->story->color = '標題顏色';
$lang->story->toBug = '轉Bug';
$lang->story->spec = "描述";
@@ -279,6 +279,8 @@ $lang->story->action->linked2plan = array('main' => '$date, 由
$lang->story->action->unlinkedfromplan = array('main' => '$date, 由 $actor 從計劃 $extra 移除。');
$lang->story->action->linked2project = array('main' => '$date, 由 $actor 關聯到' . $lang->executionCommon . ' $extra。');
$lang->story->action->unlinkedfromproject = array('main' => '$date, 由 $actor 從' . $lang->executionCommon . ' $extra 移除。');
+$lang->story->action->linked2prj = array('main' => '$date, 由 $actor 關聯到項目 $extra。');
+$lang->story->action->unlinkedfromprj = array('main' => '$date, 由 $actor 從項目 $extra 移除。');
$lang->story->action->linked2build = array('main' => '$date, 由 $actor 關聯到版本 $extra。');
$lang->story->action->unlinkedfrombuild = array('main' => '$date, 由 $actor 從版本 $extra 移除。');
$lang->story->action->linked2release = array('main' => '$date, 由 $actor 關聯到發佈 $extra。');
diff --git a/module/subject/lang/zh-tw.php b/module/subject/lang/zh-tw.php
new file mode 100644
index 0000000000..fef4bf343c
--- /dev/null
+++ b/module/subject/lang/zh-tw.php
@@ -0,0 +1,16 @@
+
+ * @package subject
+ * @version $Id: zh-tw.php 4729 2013-05-03 07:53:55Z chencongzhi520@gmail.com $
+ * @link http://www.zentao.net
+ */
+$lang->subject->common = '支出科目';
+$lang->subject->manage = '科目維護';
+$lang->subject->manageChild = '維護子科目';
+$lang->subject->name = '支出科目名稱';
+$lang->subject->browse = '瀏覽科目';
diff --git a/module/task/lang/zh-tw.php b/module/task/lang/zh-tw.php
index 5e14b0b46a..5bb7be0ba1 100644
--- a/module/task/lang/zh-tw.php
+++ b/module/task/lang/zh-tw.php
@@ -55,8 +55,8 @@ $lang->task->allModule = '所有模組';
$lang->task->common = '任務';
$lang->task->id = '編號';
-$lang->task->program = '所屬項目';
-$lang->task->project = '所屬' . $lang->executionCommon;
+$lang->task->project = '所屬項目';
+$lang->task->execution = '所屬' . $lang->executionCommon;
$lang->task->module = '所屬模組';
$lang->task->moduleAB = '模組';
$lang->task->story = "相關{$lang->SRCommon}";
diff --git a/module/testcase/lang/zh-tw.php b/module/testcase/lang/zh-tw.php
index 1247c5ab5f..77483d3ab8 100644
--- a/module/testcase/lang/zh-tw.php
+++ b/module/testcase/lang/zh-tw.php
@@ -130,7 +130,7 @@ $lang->testcase->deleteStep = '刪除';
$lang->testcase->insertBefore = '之前添加';
$lang->testcase->insertAfter = '之後添加';
-$lang->testcase->assignToMe = '給我的用例';
+$lang->testcase->assignToMe = '指派給我的用例';
$lang->testcase->openedByMe = '我建的用例';
$lang->testcase->allCases = '所有';
$lang->testcase->allTestcases = '所有用例';
diff --git a/module/testtask/lang/zh-tw.php b/module/testtask/lang/zh-tw.php
index 4e4e80d6c2..c8c37e512a 100644
--- a/module/testtask/lang/zh-tw.php
+++ b/module/testtask/lang/zh-tw.php
@@ -128,7 +128,7 @@ $lang->testtask->checkLinked = '請檢查測試單的產品是否與項目
$lang->testtask->noImportData = '導入的XML沒有解析出數據。';
$lang->testtask->unitXMLFormat = '請選擇Junit XML 格式的檔案。';
$lang->testtask->titleOfAuto = "%s 自動化測試";
-$lang->testtask->cannotBeParsed = '導入的XML文件內容格式錯誤,無法解析。';
+$lang->testtask->cannotBeParsed = '導入的XML檔案內容格式錯誤,無法解析。';
$lang->testtask->assignedToMe = '指派給我';
$lang->testtask->allCases = '所有用例';
diff --git a/module/todo/lang/zh-tw.php b/module/todo/lang/zh-tw.php
index e115517c71..cfc4546b19 100644
--- a/module/todo/lang/zh-tw.php
+++ b/module/todo/lang/zh-tw.php
@@ -87,9 +87,9 @@ $lang->todo->statusList['closed'] = '已關閉';
//$lang->todo->statusList['cancel'] = '已取消';
//$lang->todo->statusList['postpone'] = '已延期';
-$lang->todo->priList[3] = 3;
$lang->todo->priList[1] = 1;
$lang->todo->priList[2] = 2;
+$lang->todo->priList[3] = 3;
$lang->todo->priList[4] = 4;
$lang->todo->typeList['custom'] = '自定義';
@@ -118,7 +118,7 @@ $lang->todo->periods['thisWeek'] = '本週';
$lang->todo->periods['thisMonth'] = '本月';
$lang->todo->periods['thisYear'] = '本年';
$lang->todo->periods['assignedToOther'] = '指派他人';
-$lang->todo->periods['cycle'] = '週期';
+$lang->todo->periods['cycle'] = '周期';
$lang->todo->action = new stdclass();
$lang->todo->action->finished = array('main' => '$date, 由 $actor $extra。$appendLink', 'extra' => 'reasonList');
diff --git a/module/upgrade/lang/zh-tw.php b/module/upgrade/lang/zh-tw.php
index d14c3482e8..56fbe90b04 100644
--- a/module/upgrade/lang/zh-tw.php
+++ b/module/upgrade/lang/zh-tw.php
@@ -36,16 +36,62 @@ $lang->upgrade->setStatusFile = '升級之前請先完成下面的操
或者刪掉"%s" 這個檔案 ,重新創建一個ok.txt檔案,不需要內容。
我已經仔細閲讀上面提示且完成上述工作,繼續更新
';
-$lang->upgrade->selectVersion = '選擇版本';
-$lang->upgrade->continue = '繼續';
-$lang->upgrade->noteVersion = "務必選擇正確的版本,否則會造成數據丟失。";
-$lang->upgrade->fromVersion = '原來的版本';
-$lang->upgrade->toVersion = '升級到';
-$lang->upgrade->confirm = '確認要執行的SQL語句';
-$lang->upgrade->sureExecute = '確認執行';
-$lang->upgrade->forbiddenExt = '以下插件與新版本不兼容,已經自動禁用:';
-$lang->upgrade->updateFile = '需要更新附件信息。';
-$lang->upgrade->noticeSQL = '檢查到你的資料庫跟標準不一致,嘗試修復失敗。請執行以下SQL語句,再刷新頁面檢查。';
-$lang->upgrade->afterDeleted = '以上檔案未能刪除, 刪除後刷新!';
+$lang->upgrade->selectVersion = '選擇版本';
+$lang->upgrade->continue = '繼續';
+$lang->upgrade->noteVersion = "務必選擇正確的版本,否則會造成數據丟失。";
+$lang->upgrade->fromVersion = '原來的版本';
+$lang->upgrade->toVersion = '升級到';
+$lang->upgrade->confirm = '確認要執行的SQL語句';
+$lang->upgrade->sureExecute = '確認執行';
+$lang->upgrade->forbiddenExt = '以下插件與新版本不兼容,已經自動禁用:';
+$lang->upgrade->updateFile = '需要更新附件信息。';
+$lang->upgrade->noticeSQL = '檢查到你的資料庫跟標準不一致,嘗試修復失敗。請執行以下SQL語句,再刷新頁面檢查。';
+$lang->upgrade->afterDeleted = '以上檔案未能刪除, 刪除後刷新!';
+$lang->upgrade->mergeProgram = '數據遷移';
+$lang->upgrade->mergeTips = '數據遷移提示';
+$lang->upgrade->to20Demo = '查看20版本Demo';
+$lang->upgrade->demoURL = 'http://zentao20.demo.zentao.net';
+$lang->upgrade->videoURL = 'https://qc.zentao.net/zentao20.mp4';
+$lang->upgrade->to20Tips = '禪道20版本升級提示';
+$lang->upgrade->to20Button = '我已經做好備份,開始升級吧!';
+$lang->upgrade->to20TipsHeader = "尊敬的用戶,感謝對禪道的支持。自20版本開始,禪道全面升級成為通用的項目管理平台。相關介紹請看如下視頻(如視頻無法正常播放,請直接訪問 禪道20版本介紹):
";
+$lang->upgrade->to20Desc = <<
+ 友情提示:
+
+ - 您可以先安裝一個20版本的禪道,體驗一下里邊的概念和流程。
+ - 20版本禪道改動比較大,升級之前請做好備份。
+ - 請放心升級,即使第一次升級不到位,後續還可以再調整,不會影響系統數據。
+
+
+EOD;
+$lang->upgrade->mergeProgramDesc = <<接下來我們會把之前歷史產品和迭代數據遷移到項目集和項目下,遷移的方案如下:
+方案一:以產品綫組織的產品和迭代
+可以將整個產品綫及其下面的產品和迭代遷移到一個項目集和項目中,當然您也可以根據需要分開遷移。
+方案二:以產品組織的迭代
+可以選擇多個產品及其下面的迭代遷移到一個項目集和項目中,也可以選擇某一個產品和產品下面的迭代遷移到項目集和項目中。
+方案三:獨立的迭代
+可以選擇若干個迭代遷移到一個項目集中,也可以獨立遷移。
+方案四:關聯多個產品的迭代
+可以選擇這些迭代歸屬於某個新項目下。
+EOD;
+
+$lang->upgrade->line = '產品綫';
+$lang->upgrade->program = '目標項目集和項目';
+$lang->upgrade->existPGM = '已有項目集';
+$lang->upgrade->existPRJ = '已有項目';
+$lang->upgrade->product = $lang->productCommon;
+$lang->upgrade->project = '迭代';
+$lang->upgrade->repo = '版本庫';
+$lang->upgrade->mergeRepo = '歸併版本庫';
+
+$lang->upgrade->newProgram = '新建';
+$lang->upgrade->mergeSummary = "尊敬的用戶,您的系統中共有%s個產品,%s個迭代等待遷移。";
+$lang->upgrade->mergeByProductLine = "以產品綫組織的產品和迭代:將整個產品綫及其下面的產品和迭代歸併到一個項目集和項目中,也可以分開歸併。";
+$lang->upgrade->mergeByProduct = "以產品組織的迭代:可以選擇多個產品及其下面的迭代歸併到一個項目集和項目中,也可以選擇某一個產品將其下面所屬的迭代歸併到項目集和項目中。";
+$lang->upgrade->mergeByProject = "獨立的迭代:可以選擇若干迭代歸併到一個項目中,也可以獨立歸併。";
+$lang->upgrade->mergeByMoreLink = "關聯多個產品的迭代:選擇這個迭代歸屬於哪一個產品。";
+$lang->upgrade->mergeRepoTips = "將選中的版本庫歸併到所選產品下。";
include dirname(__FILE__) . '/version.php';
diff --git a/module/user/lang/zh-tw.php b/module/user/lang/zh-tw.php
index 74db6aa1b5..7331522779 100644
--- a/module/user/lang/zh-tw.php
+++ b/module/user/lang/zh-tw.php
@@ -11,6 +11,8 @@
*/
$lang->user->common = '用戶';
$lang->user->id = '用戶編號';
+$lang->user->inside = '內部人員';
+$lang->user->outside = '外部人員';
$lang->user->company = '所屬公司';
$lang->user->dept = '部門';
$lang->user->account = '用戶名';
@@ -50,6 +52,9 @@ $lang->user->verifyPassword = '您的密碼';
$lang->user->resetPassword = '忘記密碼';
$lang->user->score = '積分';
$lang->user->name = '名稱';
+$lang->user->cropAvatar = '剪切頭像';
+$lang->user->cropAvatarTip = '拖拽選框來選擇頭像剪切範圍';
+$lang->user->cropImageTip = '所使用的頭像圖片過小,建議圖片大小至少為 48x48,當前圖片大小為 %s';
$lang->user->legendBasic = '基本資料';
$lang->user->legendContribution = '個人貢獻';
@@ -147,11 +152,18 @@ $lang->user->passwordStrengthList[2] = "強";
$lang->user->statusList['active'] = '正常';
$lang->user->statusList['delete'] = '刪除';
-$lang->user->personalData['createdTodos'] = '創建的待辦數';
-$lang->user->personalData['createdStories'] = "創建的{$lang->SRCommon}數";
-$lang->user->personalData['finishedTasks'] = '完成的任務數';
-$lang->user->personalData['resolvedBugs'] = '解決的Bug數';
-$lang->user->personalData['createdCases'] = '創建的用例數';
+$lang->user->personalData['createdTodos'] = '創建的待辦數';
+$lang->user->personalData['createdRequirements'] = "創建的用需/史詩數";
+$lang->user->personalData['createdStories'] = "創建的軟需/故事數";
+$lang->user->personalData['finishedTasks'] = '完成的任務數';
+$lang->user->personalData['createdBugs'] = '提交的Bug數';
+$lang->user->personalData['resolvedBugs'] = '解決的Bug數';
+$lang->user->personalData['createdCases'] = '創建的用例數';
+$lang->user->personalData['createdRisks'] = '創建的風險數';
+$lang->user->personalData['resolvedRisks'] = '解決的風險數';
+$lang->user->personalData['createdIssues'] = '創建的問題數';
+$lang->user->personalData['resolvedIssues'] = '解決的問題數';
+$lang->user->personalData['createdDocs'] = '創建的文檔數';
$lang->user->keepLogin['on'] = '保持登錄';
$lang->user->loginWithDemoUser = '使用demo帳號登錄:';