diff --git a/module/testreport/lang/de.php b/module/testreport/lang/de.php
index 21bb93c174..64af9319f2 100644
--- a/module/testreport/lang/de.php
+++ b/module/testreport/lang/de.php
@@ -71,7 +71,7 @@ $lang->testreport->legacyBugTip = "Aktive Bugs, oder gelöst nach der Testperi
$lang->testreport->fromCaseBugTip = "Bugs created after case-failure in the test period.";
$lang->testreport->errorTrunk = "Die Trunk Version kann kein Testbericht erstellen. Bitte passen Sie die zugeordnete Version an!";
$lang->testreport->noTestTask = "No test requests for this {$lang->productCommon}, so no reports can be generated. Please go to {$lang->productCommon} which has test requests and then generate the report.";
-$lang->testreport->noObjectID = "No test request or {$lang->projectCommon} is selected, so no report can be generated.";
+$lang->testreport->noObjectID = "No test request or {$lang->executionCommon} is selected, so no report can be generated.";
$lang->testreport->moreProduct = "Ein Testbericht kann nur innerhalb des selben Produkts erstellt werden.";
$lang->testreport->hiddenCase = "Hide %s use cases";
diff --git a/module/testreport/lang/en.php b/module/testreport/lang/en.php
index 847877a52c..cac730ac61 100644
--- a/module/testreport/lang/en.php
+++ b/module/testreport/lang/en.php
@@ -71,7 +71,7 @@ $lang->testreport->legacyBugTip = "Active bugs, or bugs that are not resolved
$lang->testreport->fromCaseBugTip = "Bugs found from the running of cases in the test period.";
$lang->testreport->errorTrunk = "You cannot create a Testing report for the trunk. Please modify the linked build!";
$lang->testreport->noTestTask = "No test requests for this {$lang->productCommon}, so no reports can be generated. Please go to {$lang->productCommon} which has test requests and then generate the report.";
-$lang->testreport->noObjectID = "No test request or {$lang->projectCommon} is selected, so no report can be generated.";
+$lang->testreport->noObjectID = "No test request or {$lang->executionCommon} is selected, so no report can be generated.";
$lang->testreport->moreProduct = "Testing reports can only be generated for the same {$lang->productCommon}.";
$lang->testreport->hiddenCase = "Hide %s use cases";
diff --git a/module/testreport/lang/fr.php b/module/testreport/lang/fr.php
index ec059147c9..ee65a122b1 100644
--- a/module/testreport/lang/fr.php
+++ b/module/testreport/lang/fr.php
@@ -71,7 +71,7 @@ $lang->testreport->legacyBugTip = "Bigs Actifs, ou bugs qui n'ont pas été r
$lang->testreport->fromCaseBugTip = "Bugs trouvés en jouant des CasTests pendant la période de test.";
$lang->testreport->errorTrunk = "Vous ne pouvez pas créer un rapport de test pour le tronc. Modifiez le build lié !";
$lang->testreport->noTestTask = "Pas de campagne de test pour ce {$lang->productCommon}, aucun rapport ne peut être généré. Choisissez un {$lang->productCommon} avec des campagnes de recette et vous pourrez produire des rapports.";
-$lang->testreport->noObjectID = "Pas de campagne de test ou un {$lang->projectCommon} est sélectionné, aucun rapport ne peut être généré.";
+$lang->testreport->noObjectID = "Pas de campagne de test ou un {$lang->executionCommon} est sélectionné, aucun rapport ne peut être généré.";
$lang->testreport->moreProduct = "Les rapports de test ne peuvent être produits que pour le même {$lang->productCommon}.";
$lang->testreport->hiddenCase = "Hide %s use cases";
diff --git a/module/testreport/lang/vi.php b/module/testreport/lang/vi.php
index 16305c9adf..e63e83a6e3 100644
--- a/module/testreport/lang/vi.php
+++ b/module/testreport/lang/vi.php
@@ -71,7 +71,7 @@ $lang->testreport->legacyBugTip = "Bug kích hoạt, hoặc Bug không đượ
$lang->testreport->fromCaseBugTip = "Lỗi được tìm thấy từ việc chạy các trường hợp trong giai đoạn thử nghiệm.";
$lang->testreport->errorTrunk = "Bạn không thể tạo một báo cáo thử nghiệm cho trunk. Vui lòng sửa đổi bản dựng liên kết!";
$lang->testreport->noTestTask = "Không có yêu cầu thử nghiệm {$lang->productCommon} này, so no reports can be generated. Vui lòng go to {$lang->productCommon} which has test requests and then generate the report.";
-$lang->testreport->noObjectID = "Không có yêu cầu test hoặc {$lang->projectCommon} được chọn, bởi vậy không có báo cáo có thể được tạo.";
+$lang->testreport->noObjectID = "Không có yêu cầu test hoặc {$lang->executionCommon} được chọn, bởi vậy không có báo cáo có thể được tạo.";
$lang->testreport->moreProduct = "Báo cáo Test chỉ có thể được tạo cho cùng {$lang->productCommon}.";
$lang->testreport->hiddenCase = "Hide %s use cases";
diff --git a/module/testreport/lang/zh-cn.php b/module/testreport/lang/zh-cn.php
index 16c30a0cad..a9be615ee1 100644
--- a/module/testreport/lang/zh-cn.php
+++ b/module/testreport/lang/zh-cn.php
@@ -71,7 +71,7 @@ $lang->testreport->legacyBugTip = "Bug状态是激活,或Bug的解决时间
$lang->testreport->fromCaseBugTip = "测试时间范围内,用例执行失败后创建的Bug。";
$lang->testreport->errorTrunk = "主干版本不能创建测试报告,请修改关联版本!";
$lang->testreport->noTestTask = "该{$lang->productCommon}下还没有关联非Trunk的测试单,不能创建报告。请先创建测试单,再创建。";
-$lang->testreport->noObjectID = "没有选定测试单或{$lang->projectCommon},无法创建测试报告!";
+$lang->testreport->noObjectID = "没有选定测试单或{$lang->executionCommon},无法创建测试报告!";
$lang->testreport->moreProduct = "只能对同一个{$lang->productCommon}生成测试报告。";
$lang->testreport->hiddenCase = "隐藏 %s 个用例";
diff --git a/module/testreport/lang/zh-tw.php b/module/testreport/lang/zh-tw.php
index 3113e01e33..719f117427 100644
--- a/module/testreport/lang/zh-tw.php
+++ b/module/testreport/lang/zh-tw.php
@@ -71,7 +71,7 @@ $lang->testreport->legacyBugTip = "Bug狀態是激活,或Bug的解決時間
$lang->testreport->fromCaseBugTip = "測試時間範圍內,用例執行失敗後創建的Bug。";
$lang->testreport->errorTrunk = "主幹版本不能創建測試報告,請修改關聯版本!";
$lang->testreport->noTestTask = "該{$lang->productCommon}下還沒有關聯非Trunk的測試單,不能創建報告。請先創建測試單,再創建。";
-$lang->testreport->noObjectID = "沒有選定測試單或{$lang->projectCommon},無法創建測試報告!";
+$lang->testreport->noObjectID = "沒有選定測試單或{$lang->executionCommon},無法創建測試報告!";
$lang->testreport->moreProduct = "只能對同一個{$lang->productCommon}生成測試報告。";
$lang->testreport->hiddenCase = "隱藏 %s 個用例";
diff --git a/module/testtask/lang/de.php b/module/testtask/lang/de.php
index 1d85748835..f0926212f4 100644
--- a/module/testtask/lang/de.php
+++ b/module/testtask/lang/de.php
@@ -57,7 +57,7 @@ $lang->testtask->expandAll = 'Aufklappen';
$lang->testtask->id = 'ID';
$lang->testtask->common = 'Testaufgabe';
$lang->testtask->product = $lang->productCommon;
-$lang->testtask->project = $lang->projectCommon;
+$lang->testtask->project = $lang->executionCommon;
$lang->testtask->build = 'Build';
$lang->testtask->owner = 'Besitzer';
$lang->testtask->executor = 'Executor';
diff --git a/module/testtask/lang/en.php b/module/testtask/lang/en.php
index de8817615e..4fb70223a0 100644
--- a/module/testtask/lang/en.php
+++ b/module/testtask/lang/en.php
@@ -57,7 +57,7 @@ $lang->testtask->expandAll = 'Expand';
$lang->testtask->id = 'ID';
$lang->testtask->common = 'Request';
$lang->testtask->product = $lang->productCommon;
-$lang->testtask->project = $lang->projectCommon;
+$lang->testtask->project = $lang->executionCommon;
$lang->testtask->build = 'Build';
$lang->testtask->owner = 'Owner';
$lang->testtask->executor = 'Executor';
diff --git a/module/testtask/lang/fr.php b/module/testtask/lang/fr.php
index 7b46f4e02f..8879eda9e4 100644
--- a/module/testtask/lang/fr.php
+++ b/module/testtask/lang/fr.php
@@ -57,7 +57,7 @@ $lang->testtask->expandAll = 'Déplier';
$lang->testtask->id = 'ID';
$lang->testtask->common = 'Recette';
$lang->testtask->product = $lang->productCommon;
-$lang->testtask->project = $lang->projectCommon;
+$lang->testtask->project = $lang->executionCommon;
$lang->testtask->build = 'Build';
$lang->testtask->owner = 'Owner';
$lang->testtask->executor = 'Executeur';
diff --git a/module/testtask/lang/vi.php b/module/testtask/lang/vi.php
index 774ed81f3b..d0d90e3a17 100644
--- a/module/testtask/lang/vi.php
+++ b/module/testtask/lang/vi.php
@@ -57,7 +57,7 @@ $lang->testtask->expandAll = 'Mở ra';
$lang->testtask->id = 'ID';
$lang->testtask->common = 'Yêu cầu';
$lang->testtask->product = $lang->productCommon;
-$lang->testtask->project = $lang->projectCommon;
+$lang->testtask->project = $lang->executionCommon;
$lang->testtask->build = 'Bản dựng';
$lang->testtask->owner = 'Sở hữu';
$lang->testtask->executor = 'Executor';
diff --git a/module/testtask/lang/zh-cn.php b/module/testtask/lang/zh-cn.php
index 3527b09a70..8340e168d2 100644
--- a/module/testtask/lang/zh-cn.php
+++ b/module/testtask/lang/zh-cn.php
@@ -57,7 +57,7 @@ $lang->testtask->expandAll = '全部展开';
$lang->testtask->id = '编号';
$lang->testtask->common = '测试单';
$lang->testtask->product = '所属' . $lang->productCommon;
-$lang->testtask->project = '所属' . $lang->projectCommon;
+$lang->testtask->project = '所属' . $lang->executionCommon;
$lang->testtask->build = '版本';
$lang->testtask->owner = '负责人';
$lang->testtask->executor = '执行人';
diff --git a/module/testtask/lang/zh-tw.php b/module/testtask/lang/zh-tw.php
index 5917adab23..913c68f99f 100644
--- a/module/testtask/lang/zh-tw.php
+++ b/module/testtask/lang/zh-tw.php
@@ -57,7 +57,7 @@ $lang->testtask->expandAll = '全部展開';
$lang->testtask->id = '編號';
$lang->testtask->common = '測試單';
$lang->testtask->product = '所屬' . $lang->productCommon;
-$lang->testtask->project = '所屬' . $lang->projectCommon;
+$lang->testtask->project = '所屬' . $lang->executionCommon;
$lang->testtask->build = '版本';
$lang->testtask->owner = '負責人';
$lang->testtask->executor = '執行人';
diff --git a/module/todo/lang/de.php b/module/todo/lang/de.php
index ff178805c3..9d6514f966 100644
--- a/module/todo/lang/de.php
+++ b/module/todo/lang/de.php
@@ -93,8 +93,8 @@ $lang->todo->priList[4] = 'Niedrig';
$lang->todo->typeList['custom'] = 'Eigene';
$lang->todo->typeList['cycle'] = 'Wiederkehrend';
$lang->todo->typeList['bug'] = 'Bug';
-$lang->todo->typeList['task'] = $lang->projectCommon . ' Aufgabe';
-$lang->todo->typeList['story'] = $lang->projectCommon . ' Story';
+$lang->todo->typeList['task'] = $lang->executionCommon . ' Aufgabe';
+$lang->todo->typeList['story'] = $lang->executionCommon . ' Story';
$lang->todo->confirmDelete = "Möchten Sie diesen ToDo löschen?";
$lang->todo->thisIsPrivate = 'Dies ist ein privater ToDo';
diff --git a/module/todo/lang/en.php b/module/todo/lang/en.php
index 59aa59ef99..45be859204 100644
--- a/module/todo/lang/en.php
+++ b/module/todo/lang/en.php
@@ -35,7 +35,7 @@ $lang->todo->cycle = "Recur";
$lang->todo->cycleConfig = "Recurrence";
$lang->todo->project = "Project";
$lang->todo->product = "Product";
-$lang->todo->execution = "Stage/" . $lang->projectCommon;
+$lang->todo->execution = "Stage/" . $lang->executionCommon;
$lang->todo->reasonList['story'] = "Convert to Story";
$lang->todo->reasonList['task'] = "Convert to Task";
diff --git a/module/todo/lang/zh-cn.php b/module/todo/lang/zh-cn.php
index 781a00f62d..abc8eeed18 100644
--- a/module/todo/lang/zh-cn.php
+++ b/module/todo/lang/zh-cn.php
@@ -35,7 +35,7 @@ $lang->todo->cycle = "周期";
$lang->todo->cycleConfig = "周期设置";
$lang->todo->project = "所属项目";
$lang->todo->product = "所属产品";
-$lang->todo->execution = "所属阶段/" . $lang->projectCommon;
+$lang->todo->execution = "所属阶段/" . $lang->executionCommon;
$lang->todo->reasonList['story'] = "转{$lang->productSRCommon}";
$lang->todo->reasonList['task'] = "转任务";
@@ -96,8 +96,8 @@ $lang->todo->priList[4] = '最低';
$lang->todo->typeList['custom'] = '自定义';
$lang->todo->typeList['cycle'] = '周期';
$lang->todo->typeList['bug'] = 'Bug';
-$lang->todo->typeList['task'] = $lang->projectCommon . '任务';
-$lang->todo->typeList['story'] = $lang->projectCommon . $lang->productSRCommon;
+$lang->todo->typeList['task'] = $lang->executionCommon . '任务';
+$lang->todo->typeList['story'] = $lang->executionCommon . $lang->productSRCommon;
$lang->todo->confirmDelete = "您确定要删除这条待办吗?";
$lang->todo->thisIsPrivate = '这是一条私人事务。:)';
diff --git a/module/todo/lang/zh-tw.php b/module/todo/lang/zh-tw.php
index 5416fac99e..9bd7efe97e 100644
--- a/module/todo/lang/zh-tw.php
+++ b/module/todo/lang/zh-tw.php
@@ -93,8 +93,8 @@ $lang->todo->priList[4] = '最低';
$lang->todo->typeList['custom'] = '自定義';
$lang->todo->typeList['cycle'] = '周期';
$lang->todo->typeList['bug'] = 'Bug';
-$lang->todo->typeList['task'] = $lang->projectCommon . '任務';
-$lang->todo->typeList['story'] = $lang->projectCommon . $lang->productSRCommon;
+$lang->todo->typeList['task'] = $lang->executionCommon . '任務';
+$lang->todo->typeList['story'] = $lang->executionCommon . $lang->productSRCommon;
$lang->todo->confirmDelete = "您確定要刪除這條待辦嗎?";
$lang->todo->thisIsPrivate = '這是一條私人事務。:)';
diff --git a/module/tree/lang/de.php b/module/tree/lang/de.php
index b566be0216..e52a1ebe52 100644
--- a/module/tree/lang/de.php
+++ b/module/tree/lang/de.php
@@ -18,7 +18,7 @@ $lang->tree->browseTask = 'Aufgaben Modul verwalten';
$lang->tree->manage = 'Modul verwalten';
$lang->tree->fix = 'Fix';
$lang->tree->manageProduct = "Verwalte {$lang->productCommon}";
-$lang->tree->manageProject = "Verwalte {$lang->projectCommon}";
+$lang->tree->manageProject = "Verwalte {$lang->executionCommon}";
$lang->tree->manageLine = "Manage {$lang->productCommon} Line";
$lang->tree->manageBug = 'Verwalte Bugs';
$lang->tree->manageCase = 'Verwalte Fälle';
@@ -31,14 +31,14 @@ $lang->tree->manageLineChild = 'Verwalte Produktlinie';
$lang->tree->manageBugChild = 'Verwalte Bugs';
$lang->tree->manageCaseChild = 'Verwalte Fälle';
$lang->tree->manageCaselibChild = 'Verwalte Bibliothek';
-$lang->tree->manageTaskChild = "Verwalte {$lang->projectCommon}";
+$lang->tree->manageTaskChild = "Verwalte {$lang->executionCommon}";
$lang->tree->syncFromProduct = "Copy from Other {$lang->productCommon}s";
$lang->tree->dragAndSort = "Ziehen und Sotieren";
$lang->tree->sort = "Sortieren";
$lang->tree->addChild = "Hinzufügen";
$lang->tree->confirmDelete = 'Do you want to delete this module and its child modules?';
$lang->tree->confirmDeleteLine = "Do you want to delete this {$lang->productCommon} line?";
-$lang->tree->confirmRoot = "Any changes to the {$lang->productCommon} will change the stories, bugs, cases of {$lang->productCommon} it belongs to, as well as the linkage of {$lang->projectCommon} and {$lang->productCommon}, which is dangerous. Do you want to change it?";
+$lang->tree->confirmRoot = "Any changes to the {$lang->productCommon} will change the stories, bugs, cases of {$lang->productCommon} it belongs to, as well as the linkage of {$lang->executionCommon} and {$lang->productCommon}, which is dangerous. Do you want to change it?";
$lang->tree->confirmRoot4Doc = "Any changes to the library will change the document of library it belongs to, which is dangerous. Do you want to change it?";
$lang->tree->successSave = 'Saved.';
$lang->tree->successFixed = 'Fixed.';
@@ -61,5 +61,5 @@ $lang->tree->owner = 'Besitzer';
$lang->tree->order = 'Reihenfolge';
$lang->tree->short = 'Sortierung';
$lang->tree->all = 'Alle Module';
-$lang->tree->projectDoc = "{$lang->projectCommon} Dok";
+$lang->tree->projectDoc = "{$lang->executionCommon} Dok";
$lang->tree->product = $lang->productCommon;
diff --git a/module/tree/lang/en.php b/module/tree/lang/en.php
index e3adbba73a..656214ac57 100644
--- a/module/tree/lang/en.php
+++ b/module/tree/lang/en.php
@@ -18,7 +18,7 @@ $lang->tree->browseTask = 'Manage Task Module';
$lang->tree->manage = 'Manage Module';
$lang->tree->fix = 'Fix Module';
$lang->tree->manageProduct = "Manage {$lang->productCommon} Modules";
-$lang->tree->manageProject = "Manage {$lang->projectCommon} Modules";
+$lang->tree->manageProject = "Manage {$lang->executionCommon} Modules";
$lang->tree->manageLine = "Manage {$lang->productCommon} Line";
$lang->tree->manageBug = 'Manage Bug';
$lang->tree->manageCase = 'Manage Case';
@@ -31,14 +31,14 @@ $lang->tree->manageLineChild = "Manage {$lang->productCommon} Line";
$lang->tree->manageBugChild = 'Manage Child Bugs';
$lang->tree->manageCaseChild = 'Manage Child Cases';
$lang->tree->manageCaselibChild = 'Manage Child Libraries';
-$lang->tree->manageTaskChild = "Manage Child {$lang->projectCommon} Modules";
+$lang->tree->manageTaskChild = "Manage Child {$lang->executionCommon} Modules";
$lang->tree->syncFromProduct = "Copy from Other {$lang->productCommon}s";
$lang->tree->dragAndSort = "Drag to order";
$lang->tree->sort = "Order";
$lang->tree->addChild = "Add Child Module";
$lang->tree->confirmDelete = 'Do you want to delete this module and its child modules?';
$lang->tree->confirmDeleteLine = "Do you want to delete this {$lang->productCommon} line?";
-$lang->tree->confirmRoot = "Any changes to the {$lang->productCommon} will change the stories, bugs, cases of {$lang->productCommon} it belongs to, as well as the linkage of {$lang->projectCommon} and {$lang->productCommon}, which is dangerous. Do you want to change it?";
+$lang->tree->confirmRoot = "Any changes to the {$lang->productCommon} will change the stories, bugs, cases of {$lang->productCommon} it belongs to, as well as the linkage of {$lang->executionCommon} and {$lang->productCommon}, which is dangerous. Do you want to change it?";
$lang->tree->confirmRoot4Doc = "Any changes to the library will change the document of library it belongs to, which is dangerous. Do you want to change it?";
$lang->tree->successSave = 'Saved.';
$lang->tree->successFixed = 'Fixed.';
@@ -61,5 +61,5 @@ $lang->tree->owner = 'Owner';
$lang->tree->order = 'Order';
$lang->tree->short = 'Abbr.';
$lang->tree->all = 'All Modules';
-$lang->tree->projectDoc = "{$lang->projectCommon} Document";
+$lang->tree->projectDoc = "{$lang->executionCommon} Document";
$lang->tree->product = $lang->productCommon;
diff --git a/module/tree/lang/fr.php b/module/tree/lang/fr.php
index f98a5ba403..160860729e 100644
--- a/module/tree/lang/fr.php
+++ b/module/tree/lang/fr.php
@@ -18,7 +18,7 @@ $lang->tree->browseTask = 'Gérer les Modules Tâche';
$lang->tree->manage = 'Gérer les Modules';
$lang->tree->fix = 'Corrigez Module';
$lang->tree->manageProduct = "Gérer les Modules {$lang->productCommon}";
-$lang->tree->manageProject = "Gérer les Modules {$lang->projectCommon}";
+$lang->tree->manageProject = "Gérer les Modules {$lang->executionCommon}";
$lang->tree->manageLine = 'Gérer Ligne Produit';
$lang->tree->manageBug = 'Gérer Bugs';
$lang->tree->manageCase = 'Gérer CasTests';
@@ -31,14 +31,14 @@ $lang->tree->manageLineChild = 'Gérer Ligne Produit';
$lang->tree->manageBugChild = 'Gérer Sous-Bugs';
$lang->tree->manageCaseChild = 'Gérer Sous-CasTests';
$lang->tree->manageCaselibChild = 'Gérer Sous-Librairies';
-$lang->tree->manageTaskChild = "Gérer Sous-Modules {$lang->projectCommon}";
+$lang->tree->manageTaskChild = "Gérer Sous-Modules {$lang->executionCommon}";
$lang->tree->syncFromProduct = "Copier d'un autre {$lang->productCommon}";
$lang->tree->dragAndSort = "Faites glisser pour ordonner";
$lang->tree->sort = "Ordonnez";
$lang->tree->addChild = "Ajout Sous-Module";
$lang->tree->confirmDelete = 'Voulez-vous supprimer ce module et tous ses sous-modules ?';
$lang->tree->confirmDeleteLine = 'Voulez-vous supprimer cette ligne de produit ?';
-$lang->tree->confirmRoot = "Les changements du {$lang->productCommon} vont impacter les stories, bugs, casTests du {$lang->productCommon} auquel ils appartiennent, ainsi que les associations de {$lang->projectCommon} et {$lang->productCommon}, ce qui est dangereux. Voulez-vous malgré tout effectuer le changement ?";
+$lang->tree->confirmRoot = "Les changements du {$lang->productCommon} vont impacter les stories, bugs, casTests du {$lang->productCommon} auquel ils appartiennent, ainsi que les associations de {$lang->executionCommon} et {$lang->productCommon}, ce qui est dangereux. Voulez-vous malgré tout effectuer le changement ?";
$lang->tree->confirmRoot4Doc = "Toute modification apportée à la bibliothèque modifiera le document de la bibliothèque à laquelle elle appartient, ce qui est dangereux. Voulez-vous le changer ?";
$lang->tree->successSave = 'Sauvé.';
$lang->tree->successFixed = 'Corrigé.';
@@ -61,5 +61,5 @@ $lang->tree->owner = 'Propriétaire';
$lang->tree->order = 'Ordre';
$lang->tree->short = 'Abbr.';
$lang->tree->all = 'Tous les Modules';
-$lang->tree->projectDoc = "Document {$lang->projectCommon}";
+$lang->tree->projectDoc = "Document {$lang->executionCommon}";
$lang->tree->product = $lang->productCommon;
diff --git a/module/tree/lang/vi.php b/module/tree/lang/vi.php
index a3f5f8c374..a21179b691 100644
--- a/module/tree/lang/vi.php
+++ b/module/tree/lang/vi.php
@@ -18,7 +18,7 @@ $lang->tree->browseTask = 'Quản lý Module nhiệm vụ';
$lang->tree->manage = 'Quản lý Module';
$lang->tree->fix = 'Sửa Module';
$lang->tree->manageProduct = "Quản lý module {$lang->productCommon}";
-$lang->tree->manageProject = "Quản lý module {$lang->projectCommon}";
+$lang->tree->manageProject = "Quản lý module {$lang->executionCommon}";
$lang->tree->manageLine = "Quản lý dòng {$lang->productCommon}";
$lang->tree->manageBug = 'Quản lý Bug';
$lang->tree->manageCase = 'Quản lý tình huống';
@@ -31,14 +31,14 @@ $lang->tree->manageLineChild = "Quản lý dòng {$lang->productCommon}";
$lang->tree->manageBugChild = 'Quản lý Bugs con';
$lang->tree->manageCaseChild = 'Quản lý tình huống con';
$lang->tree->manageCaselibChild = 'Quản lý thư viện con';
-$lang->tree->manageTaskChild = "Quản lý module {$lang->projectCommon} con";
+$lang->tree->manageTaskChild = "Quản lý module {$lang->executionCommon} con";
$lang->tree->syncFromProduct = "Sao chép từ {$lang->productCommon} khác";
$lang->tree->dragAndSort = "Drag để sắp xếp";
$lang->tree->sort = "Thứ tự";
$lang->tree->addChild = "Thêm Module con";
$lang->tree->confirmDelete = 'Bạn có muốn xóa module này và module con của nó?';
$lang->tree->confirmDeleteLine = "Bạn có muốn xóa dòng {$lang->productCommon} này không?";
-$lang->tree->confirmRoot = "Mọi sự thay đổi tới {$lang->productCommon} này sẽ thay đổi the câu chuyện, bugs, tình huống của {$lang->productCommon} nó sở hữu, cũng như liên kết của {$lang->projectCommon} và {$lang->productCommon}, điều này nguy hiểm. Bạn có muốn thay đổi nó?";
+$lang->tree->confirmRoot = "Mọi sự thay đổi tới {$lang->productCommon} này sẽ thay đổi the câu chuyện, bugs, tình huống của {$lang->productCommon} nó sở hữu, cũng như liên kết của {$lang->executionCommon} và {$lang->productCommon}, điều này nguy hiểm. Bạn có muốn thay đổi nó?";
$lang->tree->confirmRoot4Doc = "Mọi sự thay đổi tới thư viện này sẽ thay đổi thư viện tài liệu nó sở hữu, điều này nguy hiểm. Bạn có muốn thay đổi nó?";
$lang->tree->successSave = 'Đã lưu.';
$lang->tree->successFixed = 'Đã sửa';
@@ -61,5 +61,5 @@ $lang->tree->owner = 'Sở hữu';
$lang->tree->order = 'Sắp xếp';
$lang->tree->short = 'V.tắt';
$lang->tree->all = 'Tất cả Modules';
-$lang->tree->projectDoc = "Tài liệu {$lang->projectCommon}";
+$lang->tree->projectDoc = "Tài liệu {$lang->executionCommon}";
$lang->tree->product = $lang->productCommon;
diff --git a/module/tree/lang/zh-cn.php b/module/tree/lang/zh-cn.php
index 309f6fa54a..bdc435930b 100644
--- a/module/tree/lang/zh-cn.php
+++ b/module/tree/lang/zh-cn.php
@@ -18,7 +18,7 @@ $lang->tree->browseTask = '任务模块维护';
$lang->tree->manage = '维护模块';
$lang->tree->fix = '修正数据';
$lang->tree->manageProduct = "维护{$lang->productCommon}视图模块";
-$lang->tree->manageProject = "维护{$lang->projectCommon}视图模块";
+$lang->tree->manageProject = "维护{$lang->executionCommon}视图模块";
$lang->tree->manageLine = "维护{$lang->productCommon}线";
$lang->tree->manageBug = '维护测试视图模块';
$lang->tree->manageCase = '维护用例视图模块';
@@ -31,14 +31,14 @@ $lang->tree->manageLineChild = "维护{$lang->productCommon}线";
$lang->tree->manageBugChild = '维护Bug子模块';
$lang->tree->manageCaseChild = '维护用例子模块';
$lang->tree->manageCaselibChild = '维护用例库子模块';
-$lang->tree->manageTaskChild = "维护{$lang->projectCommon}子模块";
+$lang->tree->manageTaskChild = "维护{$lang->executionCommon}子模块";
$lang->tree->syncFromProduct = '复制模块';
$lang->tree->dragAndSort = "拖放排序";
$lang->tree->sort = "排序";
$lang->tree->addChild = "增加子模块";
$lang->tree->confirmDelete = '该模块及其子模块都会被删除,您确定删除吗?';
$lang->tree->confirmDeleteLine = "您确定删除该{$lang->productCommon}线吗?";
-$lang->tree->confirmRoot = "模块的所属{$lang->productCommon}修改,会关联修改该模块下的{$lang->productSRCommon}、Bug、用例的所属{$lang->productCommon},以及{$lang->projectCommon}和{$lang->productCommon}的关联关系。该操作比较危险,请谨慎操作。是否确认修改?";
+$lang->tree->confirmRoot = "模块的所属{$lang->productCommon}修改,会关联修改该模块下的{$lang->productSRCommon}、Bug、用例的所属{$lang->productCommon},以及{$lang->executionCommon}和{$lang->productCommon}的关联关系。该操作比较危险,请谨慎操作。是否确认修改?";
$lang->tree->confirmRoot4Doc = "修改所属文档库,会同时修改该分类下文档的关联关系。该操作比较危险,请谨慎操作。是否确认修改?";
$lang->tree->successSave = '成功保存';
$lang->tree->successFixed = '成功修正数据!';
@@ -61,5 +61,5 @@ $lang->tree->owner = '负责人';
$lang->tree->order = '排序';
$lang->tree->short = '简称';
$lang->tree->all = '所有模块';
-$lang->tree->projectDoc = "{$lang->projectCommon}文档";
+$lang->tree->projectDoc = "{$lang->executionCommon}文档";
$lang->tree->product = "所属{$lang->productCommon}";
diff --git a/module/tree/lang/zh-tw.php b/module/tree/lang/zh-tw.php
index 6081118d82..2c0cf9f4a8 100644
--- a/module/tree/lang/zh-tw.php
+++ b/module/tree/lang/zh-tw.php
@@ -18,7 +18,7 @@ $lang->tree->browseTask = '任務模組維護';
$lang->tree->manage = '維護模組';
$lang->tree->fix = '修正數據';
$lang->tree->manageProduct = "維護{$lang->productCommon}視圖模組";
-$lang->tree->manageProject = "維護{$lang->projectCommon}視圖模組";
+$lang->tree->manageProject = "維護{$lang->executionCommon}視圖模組";
$lang->tree->manageLine = "維護{$lang->productCommon}綫";
$lang->tree->manageBug = '維護測試視圖模組';
$lang->tree->manageCase = '維護用例視圖模組';
@@ -31,14 +31,14 @@ $lang->tree->manageLineChild = "維護{$lang->productCommon}綫";
$lang->tree->manageBugChild = '維護Bug子模組';
$lang->tree->manageCaseChild = '維護用例子模組';
$lang->tree->manageCaselibChild = '維護用例庫子模組';
-$lang->tree->manageTaskChild = "維護{$lang->projectCommon}子模組";
+$lang->tree->manageTaskChild = "維護{$lang->executionCommon}子模組";
$lang->tree->syncFromProduct = '複製模組';
$lang->tree->dragAndSort = "拖放排序";
$lang->tree->sort = "排序";
$lang->tree->addChild = "增加子模組";
$lang->tree->confirmDelete = '該模組及其子模組都會被刪除,您確定刪除嗎?';
$lang->tree->confirmDeleteLine = "您確定刪除該{$lang->productCommon}綫嗎?";
-$lang->tree->confirmRoot = "模組的所屬{$lang->productCommon}修改,會關聯修改該模組下的{$lang->productSRCommon}、Bug、用例的所屬{$lang->productCommon},以及{$lang->projectCommon}和{$lang->productCommon}的關聯關係。該操作比較危險,請謹慎操作。是否確認修改?";
+$lang->tree->confirmRoot = "模組的所屬{$lang->productCommon}修改,會關聯修改該模組下的{$lang->productSRCommon}、Bug、用例的所屬{$lang->productCommon},以及{$lang->executionCommon}和{$lang->productCommon}的關聯關係。該操作比較危險,請謹慎操作。是否確認修改?";
$lang->tree->confirmRoot4Doc = "修改所屬文檔庫,會同時修改該分類下文檔的關聯關係。該操作比較危險,請謹慎操作。是否確認修改?";
$lang->tree->successSave = '成功保存';
$lang->tree->successFixed = '成功修正數據!';
@@ -61,5 +61,5 @@ $lang->tree->owner = '負責人';
$lang->tree->order = '排序';
$lang->tree->short = '簡稱';
$lang->tree->all = '所有模組';
-$lang->tree->projectDoc = "{$lang->projectCommon}文檔";
+$lang->tree->projectDoc = "{$lang->executionCommon}文檔";
$lang->tree->product = "所屬{$lang->productCommon}";
diff --git a/module/tutorial/lang/en.php b/module/tutorial/lang/en.php
index 38ea8aaec7..1c92b038c6 100644
--- a/module/tutorial/lang/en.php
+++ b/module/tutorial/lang/en.php
@@ -39,28 +39,28 @@ $lang->tutorial->tasks['createAccount']['nav'] = array('module' => 'user', 'met
$lang->tutorial->tasks['createAccount']['desc'] = "
Create a User:
- Open Company Users New;
- Fill the form with user information;
- Save
";
$lang->tutorial->tasks['createProduct'] = array('title' => 'Create a ' . $lang->productCommon);
-$lang->tutorial->tasks['createProduct']['nav'] = array('module' => 'product', 'method' => 'create', 'menu' => '#pageNav', 'form' => '#createForm', 'submit' => '#submit', 'target' => '.create-product-btn', 'targetPageName' => $lang->projectCommon);
+$lang->tutorial->tasks['createProduct']['nav'] = array('module' => 'product', 'method' => 'create', 'menu' => '#pageNav', 'form' => '#createForm', 'submit' => '#submit', 'target' => '.create-product-btn', 'targetPageName' => $lang->executionCommon);
$lang->tutorial->tasks['createProduct']['desc'] = "
Create a {$lang->productCommon}:
- Open {$lang->productCommon} New;
- Fill the form with {$lang->productCommon} information;
- Save
";
$lang->tutorial->tasks['createStory'] = array('title' => 'Create a Story');
$lang->tutorial->tasks['createStory']['nav'] = array('module' => 'story', 'method' => 'create', 'menuModule' => 'product', 'menu' => 'story', 'target' => '.create-story-btn', 'form' => '#dataform', 'submit' => '#submit', 'targetPageName' => 'Create Story');
$lang->tutorial->tasks['createStory']['desc'] = "
Create a story:
- Open {$lang->productCommon} Story Create;
- Fill the form with story information;
- Save
";
-$lang->tutorial->tasks['createProject'] = array('title' => 'Create a ' . $lang->projectCommon);
-$lang->tutorial->tasks['createProject']['nav'] = array('module' => 'project', 'method' => 'create', 'menu' => '#pageNav', 'form' => '#dataform', 'submit' => '#submit', 'target' => '.create-project-btn', 'targetPageName' => 'Create ' . $lang->projectCommon);
-$lang->tutorial->tasks['createProject']['desc'] = "
Create a {$lang->projectCommon}:
- Open {$lang->projectCommon} New Page;
- Fill the form with {$lang->projectCommon} information;
- Save
";
+$lang->tutorial->tasks['createProject'] = array('title' => 'Create a ' . $lang->executionCommon);
+$lang->tutorial->tasks['createProject']['nav'] = array('module' => 'project', 'method' => 'create', 'menu' => '#pageNav', 'form' => '#dataform', 'submit' => '#submit', 'target' => '.create-project-btn', 'targetPageName' => 'Create ' . $lang->executionCommon);
+$lang->tutorial->tasks['createProject']['desc'] = "
Create a {$lang->executionCommon}:
- Open {$lang->executionCommon} New Page;
- Fill the form with {$lang->executionCommon} information;
- Save
";
-$lang->tutorial->tasks['manageTeam'] = array('title' => "Manage {$lang->projectCommon} Team");
+$lang->tutorial->tasks['manageTeam'] = array('title' => "Manage {$lang->executionCommon} Team");
$lang->tutorial->tasks['manageTeam']['nav'] = array('module' => 'project', 'method' => 'managemembers', 'menu' => 'team', 'target' => '.manage-team-btn', 'form' => '#teamForm', 'requiredFields' => 'account1', 'submit' => '#submit', 'targetPageName' => 'Manage team members');
-$lang->tutorial->tasks['manageTeam']['desc'] = "
Manage {$lang->projectCommon} team members:
- Open {$lang->projectCommon} Team Manage Team Members Page;
- Choose users for the team.
- Save
";
+$lang->tutorial->tasks['manageTeam']['desc'] = "
Manage {$lang->executionCommon} team members:
- Open {$lang->executionCommon} Team Manage Team Members Page;
- Choose users for the team.
- Save
";
$lang->tutorial->tasks['linkStory'] = array('title' => 'Link a Story');
$lang->tutorial->tasks['linkStory']['nav'] = array('module' => 'project', 'method' => 'linkStory', 'menu' => 'story', 'target' => '.link-story-btn', 'form' => '#linkStoryForm', 'formType' => 'table', 'submit' => '#submit', 'targetPageName' => 'Relate Story');
-$lang->tutorial->tasks['linkStory']['desc'] = "
Link a Story to {$lang->projectCommon}:
- Open {$lang->projectCommon} Story Relate Story;
- Select stories from story list to relate;
- Save
";
+$lang->tutorial->tasks['linkStory']['desc'] = "
Link a Story to {$lang->executionCommon}:
- Open {$lang->executionCommon} Story Relate Story;
- Select stories from story list to relate;
- Save
";
$lang->tutorial->tasks['createTask'] = array('title' => 'Task Breakdown');
$lang->tutorial->tasks['createTask']['nav'] = array('module' => 'task', 'method' => 'create', 'menuModule' => 'project', 'menu' => 'story', 'target' => '.btn-task-create', 'form' => '#dataform', 'submit' => '#submit', 'targetPageName' => 'Create Task');
-$lang->tutorial->tasks['createTask']['desc'] = "
Task breakdown for a story:
- Open {$lang->projectCommon} Story WBS;
- Fill the form with task information;
- Save
";
+$lang->tutorial->tasks['createTask']['desc'] = "
Task breakdown for a story:
- Open {$lang->executionCommon} Story WBS;
- Fill the form with task information;
- Save
";
$lang->tutorial->tasks['createBug'] = array('title' => 'Report Bug');
$lang->tutorial->tasks['createBug']['nav'] = array('module' => 'bug', 'method' => 'create', 'menuModule' => 'qa', 'menu' => 'bug', 'target' => '.btn-bug-create', 'form' => '#dataform', 'submit' => '#submit', 'targetPageName' => 'Report Bug');
diff --git a/module/tutorial/lang/fr.php b/module/tutorial/lang/fr.php
index 89a4cd8eac..081bf8f868 100644
--- a/module/tutorial/lang/fr.php
+++ b/module/tutorial/lang/fr.php
@@ -39,28 +39,28 @@ $lang->tutorial->tasks['createAccount']['nav'] = array('module' => 'user', 'met
$lang->tutorial->tasks['createAccount']['desc'] = "
Create a User:
- Open Company Users New;
- Fill the form with user information;
- Save
";
$lang->tutorial->tasks['createProduct'] = array('title' => 'Create a ' . $lang->productCommon);
-$lang->tutorial->tasks['createProduct']['nav'] = array('module' => 'product', 'method' => 'create', 'menu' => '#pageNav', 'form' => '#createForm', 'submit' => '#submit', 'target' => '.create-product-btn', 'targetPageName' => $lang->projectCommon);
+$lang->tutorial->tasks['createProduct']['nav'] = array('module' => 'product', 'method' => 'create', 'menu' => '#pageNav', 'form' => '#createForm', 'submit' => '#submit', 'target' => '.create-product-btn', 'targetPageName' => $lang->executionCommon);
$lang->tutorial->tasks['createProduct']['desc'] = "
Create a {$lang->productCommon}:
- Open {$lang->productCommon} New;
- Fill the form with {$lang->productCommon} information;
- Save
";
$lang->tutorial->tasks['createStory'] = array('title' => 'Create a Story');
$lang->tutorial->tasks['createStory']['nav'] = array('module' => 'story', 'method' => 'create', 'menuModule' => 'product', 'menu' => 'story', 'target' => '.create-story-btn', 'form' => '#dataform', 'submit' => '#submit', 'targetPageName' => 'Create Story');
$lang->tutorial->tasks['createStory']['desc'] = "
Create a story:
- Open {$lang->productCommon} Story Create;
- Fill the form with story information;
- Save
";
-$lang->tutorial->tasks['createProject'] = array('title' => 'Create a ' . $lang->projectCommon);
-$lang->tutorial->tasks['createProject']['nav'] = array('module' => 'project', 'method' => 'create', 'menu' => '#pageNav', 'form' => '#dataform', 'submit' => '#submit', 'target' => '.create-project-btn', 'targetPageName' => 'Create ' . $lang->projectCommon);
-$lang->tutorial->tasks['createProject']['desc'] = "
Create a {$lang->projectCommon}:
- Open {$lang->projectCommon} New Page;
- Fill the form with {$lang->projectCommon} information;
- Save
";
+$lang->tutorial->tasks['createProject'] = array('title' => 'Create a ' . $lang->executionCommon);
+$lang->tutorial->tasks['createProject']['nav'] = array('module' => 'project', 'method' => 'create', 'menu' => '#pageNav', 'form' => '#dataform', 'submit' => '#submit', 'target' => '.create-project-btn', 'targetPageName' => 'Create ' . $lang->executionCommon);
+$lang->tutorial->tasks['createProject']['desc'] = "
Create a {$lang->executionCommon}:
- Open {$lang->executionCommon} New Page;
- Fill the form with {$lang->executionCommon} information;
- Save
";
-$lang->tutorial->tasks['manageTeam'] = array('title' => "Manage {$lang->projectCommon} Team");
+$lang->tutorial->tasks['manageTeam'] = array('title' => "Manage {$lang->executionCommon} Team");
$lang->tutorial->tasks['manageTeam']['nav'] = array('module' => 'project', 'method' => 'managemembers', 'menu' => 'team', 'target' => '.manage-team-btn', 'form' => '#teamForm', 'requiredFields' => 'account1', 'submit' => '#submit', 'targetPageName' => 'Manage team members');
-$lang->tutorial->tasks['manageTeam']['desc'] = "
Manage {$lang->projectCommon} team members:
- Open {$lang->projectCommon} Team Manage Team Members Page;
- Choose users for the team.
- Save
";
+$lang->tutorial->tasks['manageTeam']['desc'] = "
Manage {$lang->executionCommon} team members:
- Open {$lang->executionCommon} Team Manage Team Members Page;
- Choose users for the team.
- Save
";
$lang->tutorial->tasks['linkStory'] = array('title' => 'Link a Story');
$lang->tutorial->tasks['linkStory']['nav'] = array('module' => 'project', 'method' => 'linkStory', 'menu' => 'story', 'target' => '.link-story-btn', 'form' => '#linkStoryForm', 'formType' => 'table', 'submit' => '#submit', 'targetPageName' => 'Relate Story');
-$lang->tutorial->tasks['linkStory']['desc'] = "
Link a Story to {$lang->projectCommon}:
- Open {$lang->projectCommon} Story Relate Story;
- Select stories from story list to relate;
- Save
";
+$lang->tutorial->tasks['linkStory']['desc'] = "
Link a Story to {$lang->executionCommon}:
- Open {$lang->executionCommon} Story Relate Story;
- Select stories from story list to relate;
- Save
";
$lang->tutorial->tasks['createTask'] = array('title' => 'Task Breakdown');
$lang->tutorial->tasks['createTask']['nav'] = array('module' => 'task', 'method' => 'create', 'menuModule' => 'project', 'menu' => 'story', 'target' => '.btn-task-create', 'form' => '#dataform', 'submit' => '#submit', 'targetPageName' => 'Create Task');
-$lang->tutorial->tasks['createTask']['desc'] = "
Task breakdown for a story:
- Open {$lang->projectCommon} Story WBS;
- Fill the form with task information;
- Save
";
+$lang->tutorial->tasks['createTask']['desc'] = "
Task breakdown for a story:
- Open {$lang->executionCommon} Story WBS;
- Fill the form with task information;
- Save
";
$lang->tutorial->tasks['createBug'] = array('title' => 'Report Bug');
$lang->tutorial->tasks['createBug']['nav'] = array('module' => 'bug', 'method' => 'create', 'menuModule' => 'qa', 'menu' => 'bug', 'target' => '.btn-bug-create', 'form' => '#dataform', 'submit' => '#submit', 'targetPageName' => 'Report Bug');
diff --git a/module/tutorial/lang/vi.php b/module/tutorial/lang/vi.php
index 25f518074a..7086f8f8cc 100644
--- a/module/tutorial/lang/vi.php
+++ b/module/tutorial/lang/vi.php
@@ -46,21 +46,21 @@ $lang->tutorial->tasks['createStory'] = array('title' => 'Tạo một c
$lang->tutorial->tasks['createStory']['nav'] = array('module' => 'story', 'method' => 'create', 'menuModule' => 'product', 'menu' => 'story', 'target' => '.create-story-btn', 'form' => '#dataform', 'submit' => '#submit', 'targetPageName' => 'Tạo câu chuyện');
$lang->tutorial->tasks['createStory']['desc'] = "
Tạo một câu chuyện:
- Mở {$lang->productCommon} Câu chuyện Tạo câu chuyện
- Điền form thông tin câu chuyện;
- Lưu lại
";
-$lang->tutorial->tasks['createProject'] = array('title' => 'Tạo một ' . $lang->projectCommon);
-$lang->tutorial->tasks['createProject']['nav'] = array('module' => 'project', 'method' => 'create', 'menu' => '#pageNav', 'form' => '#dataform', 'submit' => '#submit', 'target' => '.create-project-btn', 'targetPageName' => 'Tạo ' . $lang->projectCommon);
-$lang->tutorial->tasks['createProject']['desc'] = "
Tạo một {$lang->projectCommon}:
- Mở {$lang->projectCommon} Tạo {$lang->projectCommon} ;
- Điền form thông tin {$lang->projectCommon}
- Lưu lại
";
+$lang->tutorial->tasks['createProject'] = array('title' => 'Tạo một ' . $lang->executionCommon);
+$lang->tutorial->tasks['createProject']['nav'] = array('module' => 'project', 'method' => 'create', 'menu' => '#pageNav', 'form' => '#dataform', 'submit' => '#submit', 'target' => '.create-project-btn', 'targetPageName' => 'Tạo ' . $lang->executionCommon);
+$lang->tutorial->tasks['createProject']['desc'] = "
Tạo một {$lang->executionCommon}:
- Mở {$lang->executionCommon} Tạo {$lang->executionCommon} ;
- Điền form thông tin {$lang->executionCommon}
- Lưu lại
";
-$lang->tutorial->tasks['manageTeam'] = array('title' => "Quản lý thành viên {$lang->projectCommon}");
+$lang->tutorial->tasks['manageTeam'] = array('title' => "Quản lý thành viên {$lang->executionCommon}");
$lang->tutorial->tasks['manageTeam']['nav'] = array('module' => 'project', 'method' => 'managemembers', 'menu' => 'team', 'target' => '.manage-team-btn', 'form' => '#teamForm', 'requiredFields' => 'account1', 'submit' => '#submit', 'targetPageName' => 'Quản lý thành viên');
-$lang->tutorial->tasks['manageTeam']['desc'] = "
Quản lý thành viên {$lang->projectCommon}:
- Mở {$lang->projectCommon} Đội nhóm Quản lý thành viên nhóm Page;
- Chọn người dùng cho đội nhóm
- Lưu lại
";
+$lang->tutorial->tasks['manageTeam']['desc'] = "
Quản lý thành viên {$lang->executionCommon}:
- Mở {$lang->executionCommon} Đội nhóm Quản lý thành viên nhóm Page;
- Chọn người dùng cho đội nhóm
- Lưu lại
";
$lang->tutorial->tasks['linkStory'] = array('title' => 'Liên kết một câu chuyện');
$lang->tutorial->tasks['linkStory']['nav'] = array('module' => 'project', 'method' => 'linkStory', 'menu' => 'story', 'target' => '.link-story-btn', 'form' => '#linkStoryForm', 'formType' => 'table', 'submit' => '#submit', 'targetPageName' => 'Liên kết câu chuyện');
-$lang->tutorial->tasks['linkStory']['desc'] = "
Liên kết một câu chuyện tới {$lang->projectCommon}:
- Mở {$lang->projectCommon} Câu chuyện Liên kết câu chuyện
- Chọn câu chuyện từ danh sách câu chuyện để liên kếtli>
- Lưu lại
";
+$lang->tutorial->tasks['linkStory']['desc'] = "
Liên kết một câu chuyện tới {$lang->executionCommon}:
- Mở {$lang->executionCommon} Câu chuyện Liên kết câu chuyện
- Chọn câu chuyện từ danh sách câu chuyện để liên kếtli>
- Lưu lại
";
$lang->tutorial->tasks['createTask'] = array('title' => 'Chia nhỏ nhiệm vụ');
$lang->tutorial->tasks['createTask']['nav'] = array('module' => 'task', 'method' => 'create', 'menuModule' => 'project', 'menu' => 'story', 'target' => '.btn-task-create', 'form' => '#dataform', 'submit' => '#submit', 'targetPageName' => 'Tạo nhiệm vụ');
-$lang->tutorial->tasks['createTask']['desc'] = "
Chia nhỏ nhiệm vụ cho một câu chuyện:
- Mở {$lang->projectCommon} Câu chuyện Chia nhỏ;
- Điền form thông tin nhiệm vụ;
- Lưu lại
";
+$lang->tutorial->tasks['createTask']['desc'] = "
Chia nhỏ nhiệm vụ cho một câu chuyện:
- Mở {$lang->executionCommon} Câu chuyện Chia nhỏ;
- Điền form thông tin nhiệm vụ;
- Lưu lại
";
$lang->tutorial->tasks['createBug'] = array('title' => 'Báo cáo Bug');
$lang->tutorial->tasks['createBug']['nav'] = array('module' => 'bug', 'method' => 'create', 'menuModule' => 'qa', 'menu' => 'bug', 'target' => '.btn-bug-create', 'form' => '#dataform', 'submit' => '#submit', 'targetPageName' => 'Báo cáo Bug');
diff --git a/module/tutorial/lang/zh-cn.php b/module/tutorial/lang/zh-cn.php
index 623a3e46b0..bd8e6a661e 100644
--- a/module/tutorial/lang/zh-cn.php
+++ b/module/tutorial/lang/zh-cn.php
@@ -55,24 +55,24 @@ if($config->global->flow == 'full' or $config->global->flow == 'onlyStory')
if($config->global->flow == 'full' or $config->global->flow == 'onlyTask')
{
- $lang->tutorial->tasks['createProject'] = array('title' => '创建' . $lang->projectCommon);
- $lang->tutorial->tasks['createProject']['nav'] = array('module' => 'project', 'method' => 'create', 'menu' => '#pageNav', 'form' => '#dataform', 'submit' => '#submit', 'target' => '.create-project-btn', 'targetPageName' => '添加' . $lang->projectCommon);
- $lang->tutorial->tasks['createProject']['desc'] = "
在系统创建一个新的{$lang->projectCommon}:
- 打开 {$lang->projectCommon} 添加{$lang->projectCommon} 页面;
- 在表单中填写要创建的{$lang->projectCommon}信息;
- 保存{$lang->projectCommon}信息。
";
+ $lang->tutorial->tasks['createProject'] = array('title' => '创建' . $lang->executionCommon);
+ $lang->tutorial->tasks['createProject']['nav'] = array('module' => 'project', 'method' => 'create', 'menu' => '#pageNav', 'form' => '#dataform', 'submit' => '#submit', 'target' => '.create-project-btn', 'targetPageName' => '添加' . $lang->executionCommon);
+ $lang->tutorial->tasks['createProject']['desc'] = "
在系统创建一个新的{$lang->executionCommon}:
- 打开 {$lang->executionCommon} 添加{$lang->executionCommon} 页面;
- 在表单中填写要创建的{$lang->executionCommon}信息;
- 保存{$lang->executionCommon}信息。
";
$lang->tutorial->tasks['manageTeam'] = array('title' => '管理团队');
$lang->tutorial->tasks['manageTeam']['nav'] = array('module' => 'project', 'method' => 'managemembers', 'menu' => 'team', 'target' => '.manage-team-btn', 'form' => '#teamForm', 'requiredFields' => 'account1', 'submit' => '#submit', 'targetPageName' => '团队管理');
- $lang->tutorial->tasks['manageTeam']['desc'] = "
管理{$lang->projectCommon}团队成员:
- 打开 {$lang->projectCommon} 团队 团队管理 页面;
- 选择要加入团队的成员;
- 保存团队成员信息。
";
+ $lang->tutorial->tasks['manageTeam']['desc'] = "
管理{$lang->executionCommon}团队成员:
- 打开 {$lang->executionCommon} 团队 团队管理 页面;
- 选择要加入团队的成员;
- 保存团队成员信息。
";
if($config->global->flow == 'full')
{
$lang->tutorial->tasks['linkStory'] = array('title' => "关联{$lang->productSRCommon}");
$lang->tutorial->tasks['linkStory']['nav'] = array('module' => 'project', 'method' => 'linkStory', 'menu' => 'story', 'target' => '.link-story-btn', 'form' => '#linkStoryForm', 'formType' => 'table', 'submit' => '#submit', 'targetPageName' => "关联{$lang->productSRCommon}");
- $lang->tutorial->tasks['linkStory']['desc'] = "
将{$lang->productSRCommon}关联到{$lang->projectCommon}:
- 打开 {$lang->projectCommon} {$lang->productSRCommon} 关联{$lang->productSRCommon} 页面;
- 在{$lang->productSRCommon}列表中勾选要关联的{$lang->productSRCommon};
- 保存关联的{$lang->productSRCommon}信息。
";
+ $lang->tutorial->tasks['linkStory']['desc'] = "
将{$lang->productSRCommon}关联到{$lang->executionCommon}:
- 打开 {$lang->executionCommon} {$lang->productSRCommon} 关联{$lang->productSRCommon} 页面;
- 在{$lang->productSRCommon}列表中勾选要关联的{$lang->productSRCommon};
- 保存关联的{$lang->productSRCommon}信息。
";
}
$lang->tutorial->tasks['createTask'] = array('title' => '分解任务');
$lang->tutorial->tasks['createTask']['nav'] = array('module' => 'task', 'method' => 'create', 'menuModule' => 'project', 'menu' => 'story', 'target' => '.btn-task-create', 'form' => '#dataform', 'submit' => '#submit', 'targetPageName' => '建任务');
- $lang->tutorial->tasks['createTask']['desc'] = "
将{$lang->projectCommon}{$lang->productSRCommon}分解为任务:
- 打开 {$lang->projectCommon} {$lang->productSRCommon} 分解任务 页面;
- 在表单中填写任务信息;
- 保存任务信息。
";
+ $lang->tutorial->tasks['createTask']['desc'] = "
将{$lang->executionCommon}{$lang->productSRCommon}分解为任务:
- 打开 {$lang->executionCommon} {$lang->productSRCommon} 分解任务 页面;
- 在表单中填写任务信息;
- 保存任务信息。
";
}
if($config->global->flow == 'full' or $config->global->flow == 'onlyTest')
diff --git a/module/tutorial/lang/zh-tw.php b/module/tutorial/lang/zh-tw.php
index fa673539fe..355757aab5 100644
--- a/module/tutorial/lang/zh-tw.php
+++ b/module/tutorial/lang/zh-tw.php
@@ -55,24 +55,24 @@ if($config->global->flow == 'full' or $config->global->flow == 'onlyStory')
if($config->global->flow == 'full' or $config->global->flow == 'onlyTask')
{
- $lang->tutorial->tasks['createProject'] = array('title' => '創建' . $lang->projectCommon);
- $lang->tutorial->tasks['createProject']['nav'] = array('module' => 'project', 'method' => 'create', 'menu' => '#pageNav', 'form' => '#dataform', 'submit' => '#submit', 'target' => '.create-project-btn', 'targetPageName' => '添加' . $lang->projectCommon);
- $lang->tutorial->tasks['createProject']['desc'] = "
在系統創建一個新的{$lang->projectCommon}:
- 打開 {$lang->projectCommon} 添加{$lang->projectCommon} 頁面;
- 在表單中填寫要創建的{$lang->projectCommon}信息;
- 保存{$lang->projectCommon}信息。
";
+ $lang->tutorial->tasks['createProject'] = array('title' => '創建' . $lang->executionCommon);
+ $lang->tutorial->tasks['createProject']['nav'] = array('module' => 'project', 'method' => 'create', 'menu' => '#pageNav', 'form' => '#dataform', 'submit' => '#submit', 'target' => '.create-project-btn', 'targetPageName' => '添加' . $lang->executionCommon);
+ $lang->tutorial->tasks['createProject']['desc'] = "
在系統創建一個新的{$lang->executionCommon}:
- 打開 {$lang->executionCommon} 添加{$lang->executionCommon} 頁面;
- 在表單中填寫要創建的{$lang->executionCommon}信息;
- 保存{$lang->executionCommon}信息。
";
$lang->tutorial->tasks['manageTeam'] = array('title' => '管理團隊');
$lang->tutorial->tasks['manageTeam']['nav'] = array('module' => 'project', 'method' => 'managemembers', 'menu' => 'team', 'target' => '.manage-team-btn', 'form' => '#teamForm', 'requiredFields' => 'account1', 'submit' => '#submit', 'targetPageName' => '團隊管理');
- $lang->tutorial->tasks['manageTeam']['desc'] = "
管理{$lang->projectCommon}團隊成員:
- 打開 {$lang->projectCommon} 團隊 團隊管理 頁面;
- 選擇要加入團隊的成員;
- 保存團隊成員信息。
";
+ $lang->tutorial->tasks['manageTeam']['desc'] = "
管理{$lang->executionCommon}團隊成員:
- 打開 {$lang->executionCommon} 團隊 團隊管理 頁面;
- 選擇要加入團隊的成員;
- 保存團隊成員信息。
";
if($config->global->flow == 'full')
{
$lang->tutorial->tasks['linkStory'] = array('title' => "關聯{$lang->productSRCommon}");
$lang->tutorial->tasks['linkStory']['nav'] = array('module' => 'project', 'method' => 'linkStory', 'menu' => 'story', 'target' => '.link-story-btn', 'form' => '#linkStoryForm', 'formType' => 'table', 'submit' => '#submit', 'targetPageName' => "關聯{$lang->productSRCommon}");
- $lang->tutorial->tasks['linkStory']['desc'] = "
將{$lang->productSRCommon}關聯到{$lang->projectCommon}:
- 打開 {$lang->projectCommon} {$lang->productSRCommon} 關聯{$lang->productSRCommon} 頁面;
- 在{$lang->productSRCommon}列表中勾選要關聯的{$lang->productSRCommon};
- 保存關聯的{$lang->productSRCommon}信息。
";
+ $lang->tutorial->tasks['linkStory']['desc'] = "
將{$lang->productSRCommon}關聯到{$lang->executionCommon}:
- 打開 {$lang->executionCommon} {$lang->productSRCommon} 關聯{$lang->productSRCommon} 頁面;
- 在{$lang->productSRCommon}列表中勾選要關聯的{$lang->productSRCommon};
- 保存關聯的{$lang->productSRCommon}信息。
";
}
$lang->tutorial->tasks['createTask'] = array('title' => '分解任務');
$lang->tutorial->tasks['createTask']['nav'] = array('module' => 'task', 'method' => 'create', 'menuModule' => 'project', 'menu' => 'story', 'target' => '.btn-task-create', 'form' => '#dataform', 'submit' => '#submit', 'targetPageName' => '建任務');
- $lang->tutorial->tasks['createTask']['desc'] = "
將{$lang->projectCommon}{$lang->productSRCommon}分解為任務:
- 打開 {$lang->projectCommon} {$lang->productSRCommon} 分解任務 頁面;
- 在表單中填寫任務信息;
- 保存任務信息。
";
+ $lang->tutorial->tasks['createTask']['desc'] = "
將{$lang->executionCommon}{$lang->productSRCommon}分解為任務:
- 打開 {$lang->executionCommon} {$lang->productSRCommon} 分解任務 頁面;
- 在表單中填寫任務信息;
- 保存任務信息。
";
}
if($config->global->flow == 'full' or $config->global->flow == 'onlyTest')
diff --git a/module/upgrade/model.php b/module/upgrade/model.php
index 2b955cef57..f901873117 100644
--- a/module/upgrade/model.php
+++ b/module/upgrade/model.php
@@ -3541,7 +3541,7 @@ class upgradeModel extends model
$lang = new stdclass();
$lang->webhook = new stdclass();
$lang->productCommon = $this->config->productCommonList[$currentLang][0];
- $lang->projectCommon = $this->config->projectCommonList[$currentLang][0];
+ $lang->executionCommon = $this->config->executionCommonList[$currentLang][0];
include $langFile;
if(!isset($lang->webhook->typeList)) continue;
@@ -3745,7 +3745,7 @@ class upgradeModel extends model
$lang = new stdclass;
$lang->bug = new stdclass;
$lang->productCommon = '';
- $lang->projectCommon = '';
+ $lang->executionCommon = '';
$lang->more = '';
$langFile = $this->app->getModuleRoot() . DS . 'bug' . DS . 'lang' . DS . $langCode . '.php';
if(is_file($langFile)) include $langFile;
diff --git a/module/user/lang/de.php b/module/user/lang/de.php
index f4a51e5781..ea9e7d9b9e 100644
--- a/module/user/lang/de.php
+++ b/module/user/lang/de.php
@@ -89,7 +89,7 @@ $lang->user->setPublicTemplate = 'Set as Public Template';
$lang->user->tplContentNotEmpty = 'Vorlageninhalt darf nicht leer sein!';
$lang->user->profile = 'Profil';
-$lang->user->project = $lang->projectCommon;
+$lang->user->project = $lang->executionCommon;
$lang->user->task = 'Aufgaben';
$lang->user->bug = 'Bugs';
$lang->user->test = 'Tests';
diff --git a/module/user/lang/en.php b/module/user/lang/en.php
index 715c3f830b..8792f8d18a 100644
--- a/module/user/lang/en.php
+++ b/module/user/lang/en.php
@@ -89,7 +89,7 @@ $lang->user->setPublicTemplate = 'Set as Public Template';
$lang->user->tplContentNotEmpty = 'The template content cannot be empty!';
$lang->user->profile = 'Profile';
-$lang->user->project = $lang->projectCommon . 's';
+$lang->user->project = $lang->executionCommon . 's';
$lang->user->task = 'Tasks';
$lang->user->bug = 'Bugs';
$lang->user->test = 'Test';
diff --git a/module/user/lang/fr.php b/module/user/lang/fr.php
index a836b03ccb..1d2a11f06a 100644
--- a/module/user/lang/fr.php
+++ b/module/user/lang/fr.php
@@ -89,7 +89,7 @@ $lang->user->setPublicTemplate = 'Définir comme Modèle Public';
$lang->user->tplContentNotEmpty = 'Le contenu du modèle ne peut pas être vide !';
$lang->user->profile = 'Profil';
-$lang->user->project = $lang->projectCommon . 's';
+$lang->user->project = $lang->executionCommon . 's';
$lang->user->task = 'Tâches';
$lang->user->bug = 'Bugs';
$lang->user->test = 'Test';
diff --git a/module/user/lang/vi.php b/module/user/lang/vi.php
index ab593ff6df..1fe7dba3e3 100644
--- a/module/user/lang/vi.php
+++ b/module/user/lang/vi.php
@@ -89,7 +89,7 @@ $lang->user->setPublicTemplate = 'Thiết lập thành mẫu công khai';
$lang->user->tplContentNotEmpty = 'Nội dung mẫu này không thể để trống!';
$lang->user->profile = 'Hồ sơ';
-$lang->user->project = $lang->projectCommon;
+$lang->user->project = $lang->executionCommon;
$lang->user->task = 'Nhiệm vụ';
$lang->user->bug = 'Bugs';
$lang->user->test = 'Test';
diff --git a/module/user/lang/zh-cn.php b/module/user/lang/zh-cn.php
index 16a66e8da9..99d97c1976 100644
--- a/module/user/lang/zh-cn.php
+++ b/module/user/lang/zh-cn.php
@@ -89,7 +89,7 @@ $lang->user->setPublicTemplate = '设为公共模板';
$lang->user->tplContentNotEmpty = '模板内容不能为空!';
$lang->user->profile = '档案';
-$lang->user->project = $lang->projectCommon;
+$lang->user->project = $lang->executionCommon;
$lang->user->task = '任务';
$lang->user->bug = 'Bug';
$lang->user->test = '测试';
diff --git a/module/user/lang/zh-tw.php b/module/user/lang/zh-tw.php
index 44f0ebbb5f..b69d4a82ae 100644
--- a/module/user/lang/zh-tw.php
+++ b/module/user/lang/zh-tw.php
@@ -87,7 +87,7 @@ $lang->user->setPublicTemplate = '設為公共模板';
$lang->user->tplContentNotEmpty = '模板內容不能為空!';
$lang->user->profile = '檔案';
-$lang->user->project = $lang->projectCommon;
+$lang->user->project = $lang->executionCommon;
$lang->user->task = '任務';
$lang->user->bug = 'Bug';
$lang->user->test = '測試';
diff --git a/module/webhook/lang/de.php b/module/webhook/lang/de.php
index f492e9e952..c3f5310d60 100644
--- a/module/webhook/lang/de.php
+++ b/module/webhook/lang/de.php
@@ -23,7 +23,7 @@ $lang->webhook->contentType = 'Content Type';
$lang->webhook->sendType = 'Sendungs Typ';
$lang->webhook->secret = 'Secret';
$lang->webhook->product = "{$lang->productCommon}";
-$lang->webhook->project = "{$lang->projectCommon}";
+$lang->webhook->project = "{$lang->executionCommon}";
$lang->webhook->params = 'Parameter';
$lang->webhook->action = 'Aktion';
$lang->webhook->desc = 'Beschreibung';
@@ -66,7 +66,7 @@ $lang->webhook->dingBindStatusList['1'] = 'Yes';
$lang->webhook->paramsList['objectType'] = 'Objekt Typ';
$lang->webhook->paramsList['objectID'] = 'Objekt ID';
$lang->webhook->paramsList['product'] = "{$lang->productCommon}";
-$lang->webhook->paramsList['project'] = "{$lang->projectCommon}";
+$lang->webhook->paramsList['project'] = "{$lang->executionCommon}";
$lang->webhook->paramsList['action'] = 'Aktion';
$lang->webhook->paramsList['actor'] = 'Actor';
$lang->webhook->paramsList['date'] = 'Datum';
@@ -81,7 +81,7 @@ $lang->webhook->note = new stdClass();
$lang->webhook->note->async = 'Wenn der Sendungstyp asynchron ist, wird Cron benötigt.';
$lang->webhook->note->bind = 'Bind User is only required for Dingding Notifier.';
$lang->webhook->note->product = "Alle Aktionen triggern den Hook wenn das {$lang->productCommon} leer ist, andernsfalls werden nur Aktionen des {$lang->productCommon} ausgelöst.";
-$lang->webhook->note->project = "Alle Aktionen triggern den Hook wenn das {$lang->projectCommon} leer ist, andernsfalls werden nur Aktionen des {$lang->projectCommon} ausgelöst.";
+$lang->webhook->note->project = "Alle Aktionen triggern den Hook wenn das {$lang->executionCommon} leer ist, andernsfalls werden nur Aktionen des {$lang->executionCommon} ausgelöst.";
$lang->webhook->note->dingHelp = "
";
$lang->webhook->note->wechatHelp = "
";
diff --git a/module/webhook/lang/en.php b/module/webhook/lang/en.php
index 7c18293648..5e8a2c43d7 100644
--- a/module/webhook/lang/en.php
+++ b/module/webhook/lang/en.php
@@ -23,7 +23,7 @@ $lang->webhook->contentType = 'Content Type';
$lang->webhook->sendType = 'Sending Type';
$lang->webhook->secret = 'Secret';
$lang->webhook->product = "{$lang->productCommon}";
-$lang->webhook->project = "{$lang->projectCommon}";
+$lang->webhook->project = "{$lang->executionCommon}";
$lang->webhook->params = 'Parameters';
$lang->webhook->action = 'Trigger Action';
$lang->webhook->desc = 'Description';
@@ -66,7 +66,7 @@ $lang->webhook->dingBindStatusList['1'] = 'Yes';
$lang->webhook->paramsList['objectType'] = 'Object Type';
$lang->webhook->paramsList['objectID'] = 'Object ID';
$lang->webhook->paramsList['product'] = "{$lang->productCommon}";
-$lang->webhook->paramsList['project'] = "{$lang->projectCommon}";
+$lang->webhook->paramsList['project'] = "{$lang->executionCommon}";
$lang->webhook->paramsList['action'] = 'Action';
$lang->webhook->paramsList['actor'] = 'ActedBy';
$lang->webhook->paramsList['date'] = 'ActedDate';
@@ -81,7 +81,7 @@ $lang->webhook->note = new stdClass();
$lang->webhook->note->async = 'If it is asynchronous, you have to go to Admin-System to turn on the cron.';
$lang->webhook->note->bind = 'Bind User is only required for Dingding Notifier.';
$lang->webhook->note->product = "All actions will trigger the hook if {$lang->productCommon} is empty, or only actions of selected {$lang->productCommon} will trigger it.";
-$lang->webhook->note->project = "All actions will trigger the hook if {$lang->projectCommon} is empty, or only actions of selected {$lang->projectCommon} will trigger it.";
+$lang->webhook->note->project = "All actions will trigger the hook if {$lang->executionCommon} is empty, or only actions of selected {$lang->executionCommon} will trigger it.";
$lang->webhook->note->dingHelp = "
";
$lang->webhook->note->wechatHelp = "
";
diff --git a/module/webhook/lang/fr.php b/module/webhook/lang/fr.php
index 98bc5e2f75..1749a314cc 100644
--- a/module/webhook/lang/fr.php
+++ b/module/webhook/lang/fr.php
@@ -23,7 +23,7 @@ $lang->webhook->contentType = 'Type de contenu';
$lang->webhook->sendType = "Type d'envoi";
$lang->webhook->secret = 'Secret';
$lang->webhook->product = "{$lang->productCommon}";
-$lang->webhook->project = "{$lang->projectCommon}";
+$lang->webhook->project = "{$lang->executionCommon}";
$lang->webhook->params = 'Paramètres';
$lang->webhook->action = 'Action capturée';
$lang->webhook->desc = 'Description';
@@ -66,7 +66,7 @@ $lang->webhook->dingBindStatusList['1'] = 'Yes';
$lang->webhook->paramsList['objectType'] = "Type d'objet";
$lang->webhook->paramsList['objectID'] = 'ID Objet';
$lang->webhook->paramsList['product'] = "{$lang->productCommon}";
-$lang->webhook->paramsList['project'] = "{$lang->projectCommon}";
+$lang->webhook->paramsList['project'] = "{$lang->executionCommon}";
$lang->webhook->paramsList['action'] = 'Action';
$lang->webhook->paramsList['actor'] = 'Accomplie par';
$lang->webhook->paramsList['date'] = 'le';
@@ -81,7 +81,7 @@ $lang->webhook->note = new stdClass();
$lang->webhook->note->async = "Si le type d'envoi est asynchrone, vous devez aller dans la console d'administration pour lancer la tâche cron.";
$lang->webhook->note->bind = "Lier l'utilisateur n'est requis que pour Dingding Notifier.";
$lang->webhook->note->product = "Toutes les actions vont déclencher le flux si {$lang->productCommon} est vide, ou seulement les actions du {$lang->productCommon} sélectionné vont le déclencher.";
-$lang->webhook->note->project = "Toutes les actions vont déclencher le flux si {$lang->projectCommon} est vide, ou seulement les actions du {$lang->projectCommon} sélectionné vont le déclencher.";
+$lang->webhook->note->project = "Toutes les actions vont déclencher le flux si {$lang->executionCommon} est vide, ou seulement les actions du {$lang->executionCommon} sélectionné vont le déclencher.";
$lang->webhook->note->dingHelp = "
";
$lang->webhook->note->wechatHelp = "
";
diff --git a/module/webhook/lang/vi.php b/module/webhook/lang/vi.php
index 754ecd9654..98b49bc738 100644
--- a/module/webhook/lang/vi.php
+++ b/module/webhook/lang/vi.php
@@ -23,7 +23,7 @@ $lang->webhook->contentType = 'Content loại';
$lang->webhook->sendType = 'Sending loại';
$lang->webhook->secret = 'Secret';
$lang->webhook->product = "{$lang->productCommon}";
-$lang->webhook->project = "{$lang->projectCommon}";
+$lang->webhook->project = "{$lang->executionCommon}";
$lang->webhook->params = 'Thông số';
$lang->webhook->action = 'Trigger hành động';
$lang->webhook->desc = 'Mô tả';
@@ -66,7 +66,7 @@ $lang->webhook->dingBindStatusList['1'] = 'Có';
$lang->webhook->paramsList['objectType'] = 'Loại đối tượng';
$lang->webhook->paramsList['objectID'] = 'ID đối tượng';
$lang->webhook->paramsList['product'] = "{$lang->productCommon}";
-$lang->webhook->paramsList['project'] = "{$lang->projectCommon}";
+$lang->webhook->paramsList['project'] = "{$lang->executionCommon}";
$lang->webhook->paramsList['action'] = 'Hành động';
$lang->webhook->paramsList['actor'] = 'ActedBy';
$lang->webhook->paramsList['date'] = 'ActedDate';
@@ -81,7 +81,7 @@ $lang->webhook->note = new stdClass();
$lang->webhook->note->async = 'If it is asynchronous, you have to go to Admin-System to bật CRON này.';
$lang->webhook->note->bind = 'Bind User is only required for Dingding Notifier.';
$lang->webhook->note->product = "Tất cả actions will trigger the hook if {$lang->productCommon} trống, or only actions of selected {$lang->productCommon} will trigger it.";
-$lang->webhook->note->project = "Tất cả actions will trigger the hook if {$lang->projectCommon} trống, or only actions of selected {$lang->projectCommon} will trigger it.";
+$lang->webhook->note->project = "Tất cả actions will trigger the hook if {$lang->executionCommon} trống, or only actions of selected {$lang->executionCommon} will trigger it.";
$lang->webhook->note->dingHelp = "
";
$lang->webhook->note->wechatHelp = "
";
diff --git a/module/webhook/lang/zh-cn.php b/module/webhook/lang/zh-cn.php
index 16c4ebc33f..e2ba8d73a1 100644
--- a/module/webhook/lang/zh-cn.php
+++ b/module/webhook/lang/zh-cn.php
@@ -23,7 +23,7 @@ $lang->webhook->contentType = '内容类型';
$lang->webhook->sendType = '发送方式';
$lang->webhook->secret = '密钥';
$lang->webhook->product = "关联{$lang->productCommon}";
-$lang->webhook->project = "关联{$lang->projectCommon}";
+$lang->webhook->project = "关联{$lang->executionCommon}";
$lang->webhook->params = '参数';
$lang->webhook->action = '触发动作';
$lang->webhook->desc = '描述';
@@ -66,7 +66,7 @@ $lang->webhook->dingBindStatusList['1'] = '已绑定';
$lang->webhook->paramsList['objectType'] = '对象类型';
$lang->webhook->paramsList['objectID'] = '对象ID';
$lang->webhook->paramsList['product'] = "所属{$lang->productCommon}";
-$lang->webhook->paramsList['project'] = "所属{$lang->projectCommon}";
+$lang->webhook->paramsList['project'] = "所属{$lang->executionCommon}";
$lang->webhook->paramsList['action'] = '动作';
$lang->webhook->paramsList['actor'] = '操作者';
$lang->webhook->paramsList['date'] = '操作日期';
@@ -81,7 +81,7 @@ $lang->webhook->note = new stdClass();
$lang->webhook->note->async = '异步需要打开计划任务。';
$lang->webhook->note->bind = '只有[钉钉/微信]工作通知类型才需要绑定用户。';
$lang->webhook->note->product = "此项为空时所有{$lang->productCommon}的动作都会触发钩子,否则只有关联{$lang->productCommon}的动作才会触发。";
-$lang->webhook->note->project = "此项为空时所有{$lang->projectCommon}的动作都会触发钩子,否则只有关联{$lang->projectCommon}的动作才会触发。";
+$lang->webhook->note->project = "此项为空时所有{$lang->executionCommon}的动作都会触发钩子,否则只有关联{$lang->executionCommon}的动作才会触发。";
$lang->webhook->note->dingHelp = "
";
$lang->webhook->note->wechatHelp = "
";
diff --git a/module/webhook/lang/zh-tw.php b/module/webhook/lang/zh-tw.php
index c0f8ba841f..517a3b27a6 100644
--- a/module/webhook/lang/zh-tw.php
+++ b/module/webhook/lang/zh-tw.php
@@ -23,7 +23,7 @@ $lang->webhook->contentType = '內容類型';
$lang->webhook->sendType = '發送方式';
$lang->webhook->secret = '密鑰';
$lang->webhook->product = "關聯{$lang->productCommon}";
-$lang->webhook->project = "關聯{$lang->projectCommon}";
+$lang->webhook->project = "關聯{$lang->executionCommon}";
$lang->webhook->params = '參數';
$lang->webhook->action = '觸發動作';
$lang->webhook->desc = '描述';
@@ -66,7 +66,7 @@ $lang->webhook->dingBindStatusList['1'] = '已綁定';
$lang->webhook->paramsList['objectType'] = '對象類型';
$lang->webhook->paramsList['objectID'] = '對象ID';
$lang->webhook->paramsList['product'] = "所屬{$lang->productCommon}";
-$lang->webhook->paramsList['project'] = "所屬{$lang->projectCommon}";
+$lang->webhook->paramsList['project'] = "所屬{$lang->executionCommon}";
$lang->webhook->paramsList['action'] = '動作';
$lang->webhook->paramsList['actor'] = '操作者';
$lang->webhook->paramsList['date'] = '操作日期';
@@ -81,7 +81,7 @@ $lang->webhook->note = new stdClass();
$lang->webhook->note->async = '非同步需要打開計劃任務。';
$lang->webhook->note->bind = '只有[釘釘/微信]工作通知類型才需要綁定用戶。';
$lang->webhook->note->product = "此項為空時所有{$lang->productCommon}的動作都會觸發鈎子,否則只有關聯{$lang->productCommon}的動作才會觸發。";
-$lang->webhook->note->project = "此項為空時所有{$lang->projectCommon}的動作都會觸發鈎子,否則只有關聯{$lang->projectCommon}的動作才會觸發。";
+$lang->webhook->note->project = "此項為空時所有{$lang->executionCommon}的動作都會觸發鈎子,否則只有關聯{$lang->executionCommon}的動作才會觸發。";
$lang->webhook->note->dingHelp = "
";
$lang->webhook->note->wechatHelp = "
";
diff --git a/www/checktable.php b/www/checktable.php
index a851857468..266577b727 100644
--- a/www/checktable.php
+++ b/www/checktable.php
@@ -63,7 +63,7 @@ $lang = new stdclass();
$lang->misc = new stdclass();
$lang->storyCommon = '';
$lang->productCommon = '';
-$lang->projectCommon = '';
+$lang->executionCommon = '';
$lang->URCommon = '';
$lang->SRCommon = '';
$lang->productURCommon = '';
From 93f96c665284a1403584a5d03b27b3b59ef83bcb Mon Sep 17 00:00:00 2001
From: leiyong <1549684884@qq.com>
Date: Fri, 18 Dec 2020 10:14:47 +0800
Subject: [PATCH 4/6] * Adjust code.
---
module/common/lang/de.php | 15 ++-------------
module/common/lang/en.php | 15 ++-------------
module/common/lang/fr.php | 15 ++-------------
module/common/lang/vi.php | 15 ++-------------
4 files changed, 8 insertions(+), 52 deletions(-)
diff --git a/module/common/lang/de.php b/module/common/lang/de.php
index 5ac6acfadc..b3b9f95275 100644
--- a/module/common/lang/de.php
+++ b/module/common/lang/de.php
@@ -127,10 +127,6 @@ $lang->typeAB = 'Typ';
$lang->common = new stdclass();
$lang->common->common = 'Standard Module';
-global $config;
-$URCommon = zget($lang, 'URCommon', "UR");
-$SRCommon = zget($lang, 'SRCommon', "SR");
-
/* Main menu. */
$lang->mainNav = new stdclass();
$lang->mainNav->my = ' My|my|index|';
@@ -299,8 +295,8 @@ $lang->scrumproduct->menu->branch = '@branch@|branch|manage|productID=%s';
$lang->scrumproduct->menu->module = 'Modul|tree|browse|productID=%s&view=story';
$lang->scrumproduct->menu->view = array('link' => 'Übersicht|product|view|productID=%s', 'alias' => 'edit');
-$lang->product->menu->requirement = array('link' => "{$URCommon}|product|browse|productID=%s&branch=&browseType=unclosed¶m=0&storyType=requirement", 'alias' => 'batchedit', 'subModule' => 'story');
-$lang->product->menu->story = array('link' => "{$SRCommon}|product|browse|productID=%s", 'alias' => 'batchedit', 'subModule' => 'story');
+$lang->product->menu->requirement = array('link' => "Requirement|product|browse|productID=%s&branch=&browseType=unclosed¶m=0&storyType=requirement", 'alias' => 'batchedit', 'subModule' => 'story');
+$lang->product->menu->story = array('link' => "Story|product|browse|productID=%s", 'alias' => 'batchedit', 'subModule' => 'story');
$lang->product->dividerMenu = ',project,doc,';
@@ -946,13 +942,6 @@ $lang->projectstory->menu->requirement = array('link' => "{$lang->projectURCommo
$lang->projectstory->menu->story = array('link' => "{$lang->projectSRCommon}|projectstory|story", 'subModule' => '');
$lang->projectstory->menu->track = array('link' => 'Track|projectstory|track', 'subModule' => '');
-$lang->waterfallproduct->menu->plan = array('link' => "Plan|productplan|browse|productID={PRODUCT}", 'subModule' => 'productplan');
-$lang->waterfallproduct->menu->story = 'Story|product|browse|product={PRODUCT}';
-$lang->waterfallproduct->menu->track = 'Track|story|track|product={PRODUCT}';
-
-$lang->waterfallproduct->menu->requirement = array('link' => "{$URCommon}|product|browse|productID={PRODUCT}&branch=&browseType=unclosed¶m=0&storyType=requirement");
-$lang->waterfallproduct->menu->story = array('link' => "{$SRCommon}|product|browse|productID={PRODUCT}");
-
$lang->nc->menu = $lang->auditplan->menu;
$lang->noMenuModule = array('my', 'todo', 'effort', 'program', 'product', 'productplan', 'projectbuild', 'story', 'branch', 'release', 'attend', 'leave', 'makeup', 'overtime', 'lieu', 'custom', 'admin', 'mail', 'extension', 'dev', 'backup', 'action', 'cron', 'issue', 'risk', 'pssp', 'sms', 'message', 'webhook', 'search');
diff --git a/module/common/lang/en.php b/module/common/lang/en.php
index 2eb5397bdb..bbb1387c58 100644
--- a/module/common/lang/en.php
+++ b/module/common/lang/en.php
@@ -127,10 +127,6 @@ $lang->typeAB = 'Type';
$lang->common = new stdclass();
$lang->common->common = 'Common Module';
-global $config;
-$URCommon = zget($lang, 'URCommon', "UR");
-$SRCommon = zget($lang, 'SRCommon', "SR");
-
/* Main menu. */
$lang->mainNav = new stdclass();
$lang->mainNav->my = ' My|my|index|';
@@ -299,8 +295,8 @@ $lang->scrumproduct->menu->branch = '@branch@|branch|manage|productID=%s';
$lang->scrumproduct->menu->module = 'Module|tree|browse|productID=%s&view=story';
$lang->scrumproduct->menu->view = array('link' => 'Overview|product|view|productID=%s', 'alias' => 'edit');
-$lang->product->menu->requirement = array('link' => "{$URCommon}|product|browse|productID=%s&branch=&browseType=unclosed¶m=0&storyType=requirement", 'alias' => 'batchedit', 'subModule' => 'story');
-$lang->product->menu->story = array('link' => "{$SRCommon}|product|browse|productID=%s", 'alias' => 'batchedit', 'subModule' => 'story');
+$lang->product->menu->requirement = array('link' => "Requirement|product|browse|productID=%s&branch=&browseType=unclosed¶m=0&storyType=requirement", 'alias' => 'batchedit', 'subModule' => 'story');
+$lang->product->menu->story = array('link' => "Story|product|browse|productID=%s", 'alias' => 'batchedit', 'subModule' => 'story');
$lang->product->dividerMenu = ',project,doc,';
@@ -946,13 +942,6 @@ $lang->projectstory->menu->requirement = array('link' => "{$lang->projectURCommo
$lang->projectstory->menu->story = array('link' => "{$lang->projectSRCommon}|projectstory|story", 'subModule' => '');
$lang->projectstory->menu->track = array('link' => 'Track|projectstory|track', 'subModule' => '');
-$lang->waterfallproduct->menu->plan = array('link' => "Plan|productplan|browse|productID={PRODUCT}", 'subModule' => 'productplan');
-$lang->waterfallproduct->menu->story = 'Story|product|browse|product={PRODUCT}';
-$lang->waterfallproduct->menu->track = 'Track|story|track|product={PRODUCT}';
-
-$lang->waterfallproduct->menu->requirement = array('link' => "{$URCommon}|product|browse|productID={PRODUCT}&branch=&browseType=unclosed¶m=0&storyType=requirement");
-$lang->waterfallproduct->menu->story = array('link' => "{$SRCommon}|product|browse|productID={PRODUCT}");
-
$lang->nc->menu = $lang->auditplan->menu;
$lang->noMenuModule = array('my', 'todo', 'effort', 'program', 'product', 'productplan', 'projectbuild', 'story', 'branch', 'release', 'attend', 'leave', 'makeup', 'overtime', 'lieu', 'custom', 'admin', 'mail', 'extension', 'dev', 'backup', 'action', 'cron', 'issue', 'risk', 'pssp', 'sms', 'message', 'webhook', 'search');
diff --git a/module/common/lang/fr.php b/module/common/lang/fr.php
index e0f4504135..ddb3025c9c 100644
--- a/module/common/lang/fr.php
+++ b/module/common/lang/fr.php
@@ -127,10 +127,6 @@ $lang->typeAB = 'Type';
$lang->common = new stdclass();
$lang->common->common = 'Module Commun';
-global $config;
-$URCommon = zget($lang, 'URCommon', "UR");
-$SRCommon = zget($lang, 'SRCommon', "SR");
-
/* Main menu. */
$lang->mainNav = new stdclass();
$lang->mainNav->my = ' My|my|index|';
@@ -299,8 +295,8 @@ $lang->scrumproduct->menu->branch = '@branch@|branch|manage|productID=%s';
$lang->scrumproduct->menu->module = 'Module|tree|browse|productID=%s&view=story';
$lang->scrumproduct->menu->view = array('link' => 'Overview|product|view|productID=%s', 'alias' => 'edit');
-$lang->product->menu->requirement = array('link' => "{$URCommon}|product|browse|productID=%s&branch=&browseType=unclosed¶m=0&storyType=requirement", 'alias' => 'batchedit', 'subModule' => 'story');
-$lang->product->menu->story = array('link' => "{$SRCommon}|product|browse|productID=%s", 'alias' => 'batchedit', 'subModule' => 'story');
+$lang->product->menu->requirement = array('link' => "Requirement|product|browse|productID=%s&branch=&browseType=unclosed¶m=0&storyType=requirement", 'alias' => 'batchedit', 'subModule' => 'story');
+$lang->product->menu->story = array('link' => "Story|product|browse|productID=%s", 'alias' => 'batchedit', 'subModule' => 'story');
$lang->product->dividerMenu = ',project,doc,';
@@ -946,13 +942,6 @@ $lang->projectstory->menu->requirement = array('link' => "{$lang->projectURCommo
$lang->projectstory->menu->story = array('link' => "{$lang->projectSRCommon}|projectstory|story", 'subModule' => '');
$lang->projectstory->menu->track = array('link' => 'Track|projectstory|track', 'subModule' => '');
-$lang->waterfallproduct->menu->plan = array('link' => "Plan|productplan|browse|productID={PRODUCT}", 'subModule' => 'productplan');
-$lang->waterfallproduct->menu->story = 'Story|product|browse|product={PRODUCT}';
-$lang->waterfallproduct->menu->track = 'Track|story|track|product={PRODUCT}';
-
-$lang->waterfallproduct->menu->requirement = array('link' => "{$URCommon}|product|browse|productID={PRODUCT}&branch=&browseType=unclosed¶m=0&storyType=requirement");
-$lang->waterfallproduct->menu->story = array('link' => "{$SRCommon}|product|browse|productID={PRODUCT}");
-
$lang->nc->menu = $lang->auditplan->menu;
$lang->noMenuModule = array('my', 'todo', 'effort', 'program', 'product', 'productplan', 'projectbuild', 'story', 'branch', 'release', 'attend', 'leave', 'makeup', 'overtime', 'lieu', 'custom', 'admin', 'mail', 'extension', 'dev', 'backup', 'action', 'cron', 'issue', 'risk', 'pssp', 'sms', 'message', 'webhook', 'search');
diff --git a/module/common/lang/vi.php b/module/common/lang/vi.php
index 9eb4f2b649..b3f26113bd 100644
--- a/module/common/lang/vi.php
+++ b/module/common/lang/vi.php
@@ -127,10 +127,6 @@ $lang->typeAB = 'Loại';
$lang->common = new stdclass();
$lang->common->common = 'Module chung';
-global $config;
-$URCommon = zget($lang, 'URCommon', "UR");
-$SRCommon = zget($lang, 'SRCommon', "SR");
-
/* Main menu. */
$lang->mainNav = new stdclass();
$lang->mainNav->my = ' My|my|index|';
@@ -299,8 +295,8 @@ $lang->scrumproduct->menu->branch = '@branch@|branch|manage|productID=%s';
$lang->scrumproduct->menu->module = 'Module|tree|browse|productID=%s&view=story';
$lang->scrumproduct->menu->view = array('link' => 'Overview|product|view|productID=%s', 'alias' => 'edit');
-$lang->product->menu->requirement = array('link' => "{$URCommon}|product|browse|productID=%s&branch=&browseType=unclosed¶m=0&storyType=requirement", 'alias' => 'batchedit', 'subModule' => 'story');
-$lang->product->menu->story = array('link' => "{$SRCommon}|product|browse|productID=%s", 'alias' => 'batchedit', 'subModule' => 'story');
+$lang->product->menu->requirement = array('link' => "Requirement|product|browse|productID=%s&branch=&browseType=unclosed¶m=0&storyType=requirement", 'alias' => 'batchedit', 'subModule' => 'story');
+$lang->product->menu->story = array('link' => "Story|product|browse|productID=%s", 'alias' => 'batchedit', 'subModule' => 'story');
$lang->product->dividerMenu = ',project,doc,';
@@ -946,13 +942,6 @@ $lang->projectstory->menu->requirement = array('link' => "{$lang->projectURCommo
$lang->projectstory->menu->story = array('link' => "{$lang->projectSRCommon}|projectstory|story", 'subModule' => '');
$lang->projectstory->menu->track = array('link' => 'Track|projectstory|track', 'subModule' => '');
-$lang->waterfallproduct->menu->plan = array('link' => "Plan|productplan|browse|productID={PRODUCT}", 'subModule' => 'productplan');
-$lang->waterfallproduct->menu->story = 'Story|product|browse|product={PRODUCT}';
-$lang->waterfallproduct->menu->track = 'Track|story|track|product={PRODUCT}';
-
-$lang->waterfallproduct->menu->requirement = array('link' => "{$URCommon}|product|browse|productID={PRODUCT}&branch=&browseType=unclosed¶m=0&storyType=requirement");
-$lang->waterfallproduct->menu->story = array('link' => "{$SRCommon}|product|browse|productID={PRODUCT}");
-
$lang->nc->menu = $lang->auditplan->menu;
$lang->noMenuModule = array('my', 'todo', 'effort', 'program', 'product', 'productplan', 'projectbuild', 'story', 'branch', 'release', 'attend', 'leave', 'makeup', 'overtime', 'lieu', 'custom', 'admin', 'mail', 'extension', 'dev', 'backup', 'action', 'cron', 'issue', 'risk', 'pssp', 'sms', 'message', 'webhook', 'search');
From 830a63c70567ccd3faadee3b5fa2a797ee5a34c7 Mon Sep 17 00:00:00 2001
From: Yagami <976204163@qq.com>
Date: Fri, 18 Dec 2020 11:08:50 +0800
Subject: [PATCH 5/6] * Add lang file.
---
module/block/lang/en.php | 10 +--
module/block/lang/fr.php | 118 +++++++++++++++---------------
module/block/lang/vi.php | 14 ++--
module/common/lang/de.php | 5 +-
module/common/lang/en.php | 5 +-
module/common/lang/fr.php | 5 +-
module/common/lang/vi.php | 5 +-
module/common/lang/zh-cn.php | 1 -
module/misc/lang/de.php | 2 +
module/misc/lang/en.php | 2 +
module/misc/lang/fr.php | 2 +
module/misc/lang/vi.php | 2 +
module/program/lang/de.php | 6 +-
module/program/lang/en.php | 6 +-
module/program/lang/fr.php | 6 +-
module/program/lang/vi.php | 6 +-
module/project/lang/zh-cn.php | 4 +-
module/projectrelease/lang/de.php | 2 +
module/projectrelease/lang/en.php | 2 +
module/projectrelease/lang/fr.php | 2 +
module/projectrelease/lang/vi.php | 2 +
module/todo/lang/de.php | 3 +
module/todo/lang/fr.php | 3 +
module/todo/lang/vi.php | 3 +
module/upgrade/lang/de.php | 2 +
module/upgrade/lang/en.php | 2 +
module/upgrade/lang/fr.php | 2 +
module/upgrade/lang/vi.php | 2 +
28 files changed, 130 insertions(+), 94 deletions(-)
diff --git a/module/block/lang/en.php b/module/block/lang/en.php
index d3e3b33bdb..6c45609d25 100644
--- a/module/block/lang/en.php
+++ b/module/block/lang/en.php
@@ -478,16 +478,16 @@ $lang->block->typeList->product['closed'] = 'Closed';
$lang->block->typeList->product['all'] = 'All';
$lang->block->typeList->product['involved'] = 'Involved';
-$lang->block->typeList->project['undone'] = 'Unfinished';
-$lang->block->typeList->project['doing'] = 'Ongoing';
-$lang->block->typeList->project['all'] = 'All';
-$lang->block->typeList->project['involved'] = 'Involved';
-
$lang->block->typeList->program['undone'] = 'Unfinished';
$lang->block->typeList->program['doing'] = 'Ongoing';
$lang->block->typeList->program['all'] = 'All';
$lang->block->typeList->program['involved'] = 'Involved';
+$lang->block->typeList->project['undone'] = 'Unfinished';
+$lang->block->typeList->project['doing'] = 'Ongoing';
+$lang->block->typeList->project['all'] = 'All';
+$lang->block->typeList->project['involved'] = 'Involved';
+
$lang->block->typeList->scrum['undone'] = 'Unfinished';
$lang->block->typeList->scrum['doing'] = 'Ongoing中';
$lang->block->typeList->scrum['all'] = 'All';
diff --git a/module/block/lang/fr.php b/module/block/lang/fr.php
index 555aeed338..6ba7eca214 100644
--- a/module/block/lang/fr.php
+++ b/module/block/lang/fr.php
@@ -98,71 +98,71 @@ $lang->block->spent = 'Has Been Spent';
$lang->block->budget = 'Budget';
$lang->block->left = 'Residuals';
-$lang->block->default['waterfall']['project']['1']['title'] = $lang->executionCommon . 'Weekly';
-$lang->block->default['waterfall']['project']['1']['block'] = 'waterfallreport';
-$lang->block->default['waterfall']['project']['1']['source'] = 'project';
-$lang->block->default['waterfall']['project']['1']['grid'] = 8;
+$lang->block->default['waterfall']['program']['1']['title'] = $lang->executionCommon . 'Weekly';
+$lang->block->default['waterfall']['program']['1']['block'] = 'waterfallreport';
+$lang->block->default['waterfall']['program']['1']['source'] = 'project';
+$lang->block->default['waterfall']['program']['1']['grid'] = 8;
-$lang->block->default['waterfall']['project']['2']['title'] = 'Estimate';
-$lang->block->default['waterfall']['project']['2']['block'] = 'waterfallestimate';
-$lang->block->default['waterfall']['project']['2']['source'] = 'project';
-$lang->block->default['waterfall']['project']['2']['grid'] = 4;
+$lang->block->default['waterfall']['program']['2']['title'] = 'Estimate';
+$lang->block->default['waterfall']['program']['2']['block'] = 'waterfallestimate';
+$lang->block->default['waterfall']['program']['2']['source'] = 'project';
+$lang->block->default['waterfall']['program']['2']['grid'] = 4;
-$lang->block->default['waterfall']['project']['3']['title'] = 'Plan Gantt Chart';
-$lang->block->default['waterfall']['project']['3']['block'] = 'waterfallgantt';
-$lang->block->default['waterfall']['project']['3']['source'] = 'project';
-$lang->block->default['waterfall']['project']['3']['grid'] = 8;
+$lang->block->default['waterfall']['program']['3']['title'] = 'Plan Gantt Chart';
+$lang->block->default['waterfall']['program']['3']['block'] = 'waterfallgantt';
+$lang->block->default['waterfall']['program']['3']['source'] = 'project';
+$lang->block->default['waterfall']['program']['3']['grid'] = 8;
-$lang->block->default['waterfall']['project']['4']['title'] = 'Progress Chart';
-$lang->block->default['waterfall']['project']['4']['block'] = 'waterfallprogress';
-$lang->block->default['waterfall']['project']['4']['grid'] = 4;
+$lang->block->default['waterfall']['program']['4']['title'] = 'Progress Chart';
+$lang->block->default['waterfall']['program']['4']['block'] = 'waterfallprogress';
+$lang->block->default['waterfall']['program']['4']['grid'] = 4;
-$lang->block->default['waterfall']['project']['5']['title'] = 'project Issue';
-$lang->block->default['waterfall']['project']['5']['block'] = 'waterfallissue';
-$lang->block->default['waterfall']['project']['5']['source'] = 'project';
-$lang->block->default['waterfall']['project']['5']['grid'] = 8;
+$lang->block->default['waterfall']['program']['5']['title'] = 'project Issue';
+$lang->block->default['waterfall']['program']['5']['block'] = 'waterfallissue';
+$lang->block->default['waterfall']['program']['5']['source'] = 'project';
+$lang->block->default['waterfall']['program']['5']['grid'] = 8;
-$lang->block->default['waterfall']['project']['5']['params']['type'] = 'all';
-$lang->block->default['waterfall']['project']['5']['params']['count'] = '15';
-$lang->block->default['waterfall']['project']['5']['params']['orderBy'] = 'id_desc';
+$lang->block->default['waterfall']['program']['5']['params']['type'] = 'all';
+$lang->block->default['waterfall']['program']['5']['params']['count'] = '15';
+$lang->block->default['waterfall']['program']['5']['params']['orderBy'] = 'id_desc';
-$lang->block->default['waterfall']['project']['6']['title'] = 'Dynamic';
-$lang->block->default['waterfall']['project']['6']['block'] = 'dynamic';
-$lang->block->default['waterfall']['project']['6']['grid'] = 4;
-$lang->block->default['waterfall']['project']['6']['source'] = '';
+$lang->block->default['waterfall']['program']['6']['title'] = 'Dynamic';
+$lang->block->default['waterfall']['program']['6']['block'] = 'dynamic';
+$lang->block->default['waterfall']['program']['6']['grid'] = 4;
+$lang->block->default['waterfall']['program']['6']['source'] = '';
-$lang->block->default['waterfall']['project']['7']['title'] = $lang->executionCommon . 'Risk';
-$lang->block->default['waterfall']['project']['7']['block'] = 'waterfallrisk';
-$lang->block->default['waterfall']['project']['7']['source'] = 'project';
-$lang->block->default['waterfall']['project']['7']['grid'] = 8;
+$lang->block->default['waterfall']['program']['7']['title'] = $lang->executionCommon . 'Risk';
+$lang->block->default['waterfall']['program']['7']['block'] = 'waterfallrisk';
+$lang->block->default['waterfall']['program']['7']['source'] = 'project';
+$lang->block->default['waterfall']['program']['7']['grid'] = 8;
-$lang->block->default['waterfall']['project']['7']['params']['type'] = 'all';
-$lang->block->default['waterfall']['project']['7']['params']['count'] = '15';
-$lang->block->default['waterfall']['project']['7']['params']['orderBy'] = 'id_desc';
+$lang->block->default['waterfall']['program']['7']['params']['type'] = 'all';
+$lang->block->default['waterfall']['program']['7']['params']['count'] = '15';
+$lang->block->default['waterfall']['program']['7']['params']['orderBy'] = 'id_desc';
-$lang->block->default['scrum']['project']['1']['title'] = $lang->executionCommon . ' Overall';
-$lang->block->default['scrum']['project']['1']['block'] = 'scrumoverall';
-$lang->block->default['scrum']['project']['1']['grid'] = 8;
+$lang->block->default['scrum']['program']['1']['title'] = $lang->executionCommon . ' Overall';
+$lang->block->default['scrum']['program']['1']['block'] = 'scrumoverall';
+$lang->block->default['scrum']['program']['1']['grid'] = 8;
-$lang->block->default['scrum']['project']['2']['title'] = $lang->executionCommon . ' List';
-$lang->block->default['scrum']['project']['2']['block'] = 'scrumlist';
-$lang->block->default['scrum']['project']['2']['grid'] = 8;
+$lang->block->default['scrum']['program']['2']['title'] = $lang->executionCommon . ' List';
+$lang->block->default['scrum']['program']['2']['block'] = 'scrumlist';
+$lang->block->default['scrum']['program']['2']['grid'] = 8;
-$lang->block->default['scrum']['project']['3']['title'] = 'Test Version';
-$lang->block->default['scrum']['project']['3']['block'] = 'scrumtest';
-$lang->block->default['scrum']['project']['3']['grid'] = 8;
+$lang->block->default['scrum']['program']['3']['title'] = 'Test Version';
+$lang->block->default['scrum']['program']['3']['block'] = 'scrumtest';
+$lang->block->default['scrum']['program']['3']['grid'] = 8;
-$lang->block->default['scrum']['project']['3']['params']['type'] = 'all';
-$lang->block->default['scrum']['project']['3']['params']['count'] = '15';
-$lang->block->default['scrum']['project']['3']['params']['orderBy'] = 'id_desc';
+$lang->block->default['scrum']['program']['3']['params']['type'] = 'all';
+$lang->block->default['scrum']['program']['3']['params']['count'] = '15';
+$lang->block->default['scrum']['program']['3']['params']['orderBy'] = 'id_desc';
-$lang->block->default['scrum']['project']['4']['title'] = $lang->executionCommon . ' Overview';
-$lang->block->default['scrum']['project']['4']['block'] = 'sprint';
-$lang->block->default['scrum']['project']['4']['grid'] = 4;
+$lang->block->default['scrum']['program']['4']['title'] = $lang->executionCommon . ' Overview';
+$lang->block->default['scrum']['program']['4']['block'] = 'sprint';
+$lang->block->default['scrum']['program']['4']['grid'] = 4;
-$lang->block->default['scrum']['project']['5']['title'] = 'Dynamic';
-$lang->block->default['scrum']['project']['5']['block'] = 'scrumdynamic';
-$lang->block->default['scrum']['project']['5']['grid'] = 4;
+$lang->block->default['scrum']['program']['5']['title'] = 'Dynamic';
+$lang->block->default['scrum']['program']['5']['block'] = 'scrumdynamic';
+$lang->block->default['scrum']['program']['5']['grid'] = 4;
$lang->block->default['product']['1']['title'] = ' Rapport de ' . $lang->productCommon;
$lang->block->default['product']['1']['block'] = 'statistic';
@@ -478,15 +478,15 @@ $lang->block->typeList->product['closed'] = 'Fermés';
$lang->block->typeList->product['all'] = 'Tous';
$lang->block->typeList->product['involved'] = 'Impliqués';
-$lang->block->typeList->project['undone'] = 'Non terminés';
-$lang->block->typeList->project['doing'] = 'En cours';
-$lang->block->typeList->project['all'] = 'Tous';
-$lang->block->typeList->project['involved'] = 'Impliqués';
+$lang->block->typeList->program['undone'] = 'Unfinished';
+$lang->block->typeList->program['doing'] = 'Ongoing';
+$lang->block->typeList->program['all'] = 'All';
+$lang->block->typeList->program['involved'] = 'Involved';
-$lang->block->typeList->execution['undone'] = 'Unfinished';
-$lang->block->typeList->execution['doing'] = 'Ongoing';
-$lang->block->typeList->execution['all'] = 'All';
-$lang->block->typeList->execution['involved'] = 'Involved';
+$lang->block->typeList->project['undone'] = 'Unfinished';
+$lang->block->typeList->project['doing'] = 'Ongoing';
+$lang->block->typeList->project['all'] = 'All';
+$lang->block->typeList->project['involved'] = 'Involved';
$lang->block->typeList->scrum['undone'] = 'Unfinished';
$lang->block->typeList->scrum['doing'] = 'Ongoing中';
diff --git a/module/block/lang/vi.php b/module/block/lang/vi.php
index d6e281d871..34986a564d 100644
--- a/module/block/lang/vi.php
+++ b/module/block/lang/vi.php
@@ -343,10 +343,10 @@ $lang->block->moduleList['todo'] = 'Việc làm';
$lang->block->modules['program'] = new stdclass();
$lang->block->modules['program']->availableBlocks = new stdclass();
-$lang->block->modules['program']->availableBlocks->project = $lang->executionCommon . ' List';
+$lang->block->modules['program']->availableBlocks->program = $lang->executionCommon . ' List';
$lang->block->modules['program']->availableBlocks->recentproject = 'Recent ' . $lang->executionCommon;
$lang->block->modules['program']->availableBlocks->statistic = $lang->executionCommon . ' Statistic';
-$lang->block->modules['program']->availableBlocks->projectteam = $lang->executionCommon . 'Human Input';
+$lang->block->modules['program']->availableBlocks->programteam = $lang->executionCommon . 'Human Input';
$lang->block->modules['scrum']['index'] = new stdclass();
$lang->block->modules['scrum']['index']->availableBlocks = new stdclass();
@@ -478,16 +478,16 @@ $lang->block->typeList->product['closed'] = 'Đã đóng';
$lang->block->typeList->product['all'] = 'Tất cả';
$lang->block->typeList->product['involved'] = 'Liên đới';
-$lang->block->typeList->project['undone'] = 'Chưa kết thúc';
-$lang->block->typeList->project['doing'] = 'Đang làm';
-$lang->block->typeList->project['all'] = 'Tất cả';
-$lang->block->typeList->project['involved'] = 'Liên đới';
-
$lang->block->typeList->program['undone'] = 'Unfinished';
$lang->block->typeList->program['doing'] = 'Ongoing';
$lang->block->typeList->program['all'] = 'All';
$lang->block->typeList->program['involved'] = 'Involved';
+$lang->block->typeList->project['undone'] = 'Chưa kết thúc';
+$lang->block->typeList->project['doing'] = 'Đang làm';
+$lang->block->typeList->project['all'] = 'Tất cả';
+$lang->block->typeList->project['involved'] = 'Liên đới';
+
$lang->block->typeList->scrum['undone'] = 'Unfinished';
$lang->block->typeList->scrum['doing'] = 'Ongoing中';
$lang->block->typeList->scrum['all'] = 'All';
diff --git a/module/common/lang/de.php b/module/common/lang/de.php
index b3b9f95275..56c7a4095d 100644
--- a/module/common/lang/de.php
+++ b/module/common/lang/de.php
@@ -294,9 +294,8 @@ $lang->scrumproduct->menu->doc = array('link' => 'Dok|doc|objectLibs|type=p
$lang->scrumproduct->menu->branch = '@branch@|branch|manage|productID=%s';
$lang->scrumproduct->menu->module = 'Modul|tree|browse|productID=%s&view=story';
$lang->scrumproduct->menu->view = array('link' => 'Übersicht|product|view|productID=%s', 'alias' => 'edit');
-
-$lang->product->menu->requirement = array('link' => "Requirement|product|browse|productID=%s&branch=&browseType=unclosed¶m=0&storyType=requirement", 'alias' => 'batchedit', 'subModule' => 'story');
-$lang->product->menu->story = array('link' => "Story|product|browse|productID=%s", 'alias' => 'batchedit', 'subModule' => 'story');
+$lang->scrumproduct->menu->requirement = array('link' => "Requirement|product|browse|productID=%s&branch=&browseType=unclosed¶m=0&storyType=requirement", 'alias' => 'batchedit', 'subModule' => 'story');
+$lang->scrumproduct->menu->story = array('link' => "Story|product|browse|productID=%s", 'alias' => 'batchedit', 'subModule' => 'story');
$lang->product->dividerMenu = ',project,doc,';
diff --git a/module/common/lang/en.php b/module/common/lang/en.php
index bbb1387c58..71df0c8166 100644
--- a/module/common/lang/en.php
+++ b/module/common/lang/en.php
@@ -294,9 +294,8 @@ $lang->scrumproduct->menu->doc = array('link' => 'Doc|doc|objectLibs|type=p
$lang->scrumproduct->menu->branch = '@branch@|branch|manage|productID=%s';
$lang->scrumproduct->menu->module = 'Module|tree|browse|productID=%s&view=story';
$lang->scrumproduct->menu->view = array('link' => 'Overview|product|view|productID=%s', 'alias' => 'edit');
-
-$lang->product->menu->requirement = array('link' => "Requirement|product|browse|productID=%s&branch=&browseType=unclosed¶m=0&storyType=requirement", 'alias' => 'batchedit', 'subModule' => 'story');
-$lang->product->menu->story = array('link' => "Story|product|browse|productID=%s", 'alias' => 'batchedit', 'subModule' => 'story');
+$lang->scrumproduct->menu->requirement = array('link' => "Requirement|product|browse|productID=%s&branch=&browseType=unclosed¶m=0&storyType=requirement", 'alias' => 'batchedit', 'subModule' => 'story');
+$lang->scrumproduct->menu->story = array('link' => "Story|product|browse|productID=%s", 'alias' => 'batchedit', 'subModule' => 'story');
$lang->product->dividerMenu = ',project,doc,';
diff --git a/module/common/lang/fr.php b/module/common/lang/fr.php
index ddb3025c9c..d7e38122b0 100644
--- a/module/common/lang/fr.php
+++ b/module/common/lang/fr.php
@@ -294,9 +294,8 @@ $lang->scrumproduct->menu->doc = array('link' => 'Doc|doc|objectLibs|type=p
$lang->scrumproduct->menu->branch = '@branch@|branch|manage|productID=%s';
$lang->scrumproduct->menu->module = 'Module|tree|browse|productID=%s&view=story';
$lang->scrumproduct->menu->view = array('link' => 'Overview|product|view|productID=%s', 'alias' => 'edit');
-
-$lang->product->menu->requirement = array('link' => "Requirement|product|browse|productID=%s&branch=&browseType=unclosed¶m=0&storyType=requirement", 'alias' => 'batchedit', 'subModule' => 'story');
-$lang->product->menu->story = array('link' => "Story|product|browse|productID=%s", 'alias' => 'batchedit', 'subModule' => 'story');
+$lang->scrumproduct->menu->requirement = array('link' => "Requirement|product|browse|productID=%s&branch=&browseType=unclosed¶m=0&storyType=requirement", 'alias' => 'batchedit', 'subModule' => 'story');
+$lang->scrumproduct->menu->story = array('link' => "Story|product|browse|productID=%s", 'alias' => 'batchedit', 'subModule' => 'story');
$lang->product->dividerMenu = ',project,doc,';
diff --git a/module/common/lang/vi.php b/module/common/lang/vi.php
index b3f26113bd..48db33f897 100644
--- a/module/common/lang/vi.php
+++ b/module/common/lang/vi.php
@@ -294,9 +294,8 @@ $lang->scrumproduct->menu->doc = array('link' => 'Doc|doc|objectLibs|type=p
$lang->scrumproduct->menu->branch = '@branch@|branch|manage|productID=%s';
$lang->scrumproduct->menu->module = 'Module|tree|browse|productID=%s&view=story';
$lang->scrumproduct->menu->view = array('link' => 'Overview|product|view|productID=%s', 'alias' => 'edit');
-
-$lang->product->menu->requirement = array('link' => "Requirement|product|browse|productID=%s&branch=&browseType=unclosed¶m=0&storyType=requirement", 'alias' => 'batchedit', 'subModule' => 'story');
-$lang->product->menu->story = array('link' => "Story|product|browse|productID=%s", 'alias' => 'batchedit', 'subModule' => 'story');
+$lang->scrumproduct->menu->requirement = array('link' => "Requirement|product|browse|productID=%s&branch=&browseType=unclosed¶m=0&storyType=requirement", 'alias' => 'batchedit', 'subModule' => 'story');
+$lang->scrumproduct->menu->story = array('link' => "Story|product|browse|productID=%s", 'alias' => 'batchedit', 'subModule' => 'story');
$lang->product->dividerMenu = ',project,doc,';
diff --git a/module/common/lang/zh-cn.php b/module/common/lang/zh-cn.php
index 0bc625d70e..0fa7607e76 100755
--- a/module/common/lang/zh-cn.php
+++ b/module/common/lang/zh-cn.php
@@ -294,7 +294,6 @@ $lang->scrumproduct->menu->doc = array('link' => '文档|doc|objectLibs|type
$lang->scrumproduct->menu->branch = '@branch@|branch|manage|productID=%s';
$lang->scrumproduct->menu->module = '模块|tree|browse|productID=%s&view=story';
$lang->scrumproduct->menu->view = array('link' => '概况|product|view|productID=%s', 'alias' => 'edit');
-
$lang->scrumproduct->menu->requirement = array('link' => "{$lang->projectURCommon}|product|browse|productID=%s&branch=&browseType=unclosed¶m=0&storyType=requirement", 'alias' => 'batchedit', 'subModule' => 'story');
$lang->scrumproduct->menu->story = array('link' => "{$lang->projectSRCommon}|product|browse|productID=%s", 'alias' => 'batchedit', 'subModule' => 'story');
diff --git a/module/misc/lang/de.php b/module/misc/lang/de.php
index 24ca3a51fd..f7edecd74f 100644
--- a/module/misc/lang/de.php
+++ b/module/misc/lang/de.php
@@ -86,6 +86,7 @@ $lang->misc->feature = new stdclass();
$lang->misc->feature->lastest = 'Letzte Version';
$lang->misc->feature->detailed = 'Details';
+$lang->misc->releaseDate['20.0.beta1'] = '2020-11-30';
$lang->misc->releaseDate['12.5.1'] = '2020-11-30';
$lang->misc->releaseDate['12.5.stable'] = '2020-11-19';
$lang->misc->releaseDate['20.0.alpha1'] = '2020-10-30';
@@ -138,6 +139,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.beta1'][] = array('title'=>'Zentao 20 beta,fix bug,process detail', 'desc' => '');
$lang->misc->feature->all['20.0.alpha1'][] = array('title'=>'Add program, reset priv.', 'desc' => '');
$lang->misc->feature->all['12.5.1'][] = array('title' => 'Fix Bug', 'desc' => '');
diff --git a/module/misc/lang/en.php b/module/misc/lang/en.php
index 0b907997e1..33288d549d 100644
--- a/module/misc/lang/en.php
+++ b/module/misc/lang/en.php
@@ -86,6 +86,7 @@ $lang->misc->feature = new stdclass();
$lang->misc->feature->lastest = 'Latest Version';
$lang->misc->feature->detailed = 'Detail';
+$lang->misc->releaseDate['20.0.beta1'] = '2020-11-30';
$lang->misc->releaseDate['12.5.1'] = '2020-11-30';
$lang->misc->releaseDate['12.5.stable'] = '2020-11-19';
$lang->misc->releaseDate['20.0.alpha1'] = '2020-10-30';
@@ -138,6 +139,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.beta1'][] = array('title'=>'Zentao 20 beta,fix bug,process detail', 'desc' => '');
$lang->misc->feature->all['20.0.alpha1'][] = array('title'=>'Add program, reset priv.', 'desc' => '');
$lang->misc->feature->all['12.5.1'][] = array('title' => 'Fix Bug', 'desc' => '');
diff --git a/module/misc/lang/fr.php b/module/misc/lang/fr.php
index cf66a75576..a44c57ae5e 100644
--- a/module/misc/lang/fr.php
+++ b/module/misc/lang/fr.php
@@ -86,6 +86,7 @@ $lang->misc->feature = new stdclass();
$lang->misc->feature->lastest = 'Dernière Version';
$lang->misc->feature->detailed = 'Détail';
+$lang->misc->releaseDate['20.0.beta1'] = '2020-11-30';
$lang->misc->releaseDate['12.5.1'] = '2020-11-30';
$lang->misc->releaseDate['12.5.stable'] = '2020-11-19';
$lang->misc->releaseDate['20.0.alpha1'] = '2020-10-30';
@@ -138,6 +139,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.beta1'][] = array('title'=>'Zentao 20 beta,fix bug,process detail', 'desc' => '');
$lang->misc->feature->all['20.0.alpha1'][] = array('title'=>'Add program, reset priv.', 'desc' => '');
$lang->misc->feature->all['12.5.1'][] = array('title' => 'Fix Bug', 'desc' => '');
diff --git a/module/misc/lang/vi.php b/module/misc/lang/vi.php
index 13d13cc5d5..7e6c33ab20 100644
--- a/module/misc/lang/vi.php
+++ b/module/misc/lang/vi.php
@@ -86,6 +86,7 @@ $lang->misc->feature = new stdclass();
$lang->misc->feature->lastest = 'Latest Version';
$lang->misc->feature->detailed = 'Chi tiết';
+$lang->misc->releaseDate['20.0.beta1'] = '2020-11-30';
$lang->misc->releaseDate['12.5.1'] = '2020-11-30';
$lang->misc->releaseDate['12.5.stable'] = '2020-11-19';
$lang->misc->releaseDate['20.0.alpha1'] = '2020-10-30';
@@ -138,6 +139,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.beta1'][] = array('title'=>'Zentao 20 beta,fix bug,process detail', 'desc' => '');
$lang->misc->feature->all['20.0.alpha1'][] = array('title'=>'Add program, reset priv.', 'desc' => '');
$lang->misc->feature->all['12.5.1'][] = array('title' => 'Fix Bug', 'desc' => '');
diff --git a/module/program/lang/de.php b/module/program/lang/de.php
index d6a99bc405..24a9ce31cc 100644
--- a/module/program/lang/de.php
+++ b/module/program/lang/de.php
@@ -30,6 +30,7 @@ $lang->program->PRJUpdateOrder = 'Order';
$lang->program->PRJSort = 'Order';
$lang->program->PRJWhitelist = 'Project Whitelist';
$lang->program->PRJAddWhitelist = 'Project Add Whitelist';
+$lang->program->PRJStoryConcept = 'Story Concept';
$lang->program->unbindWhielist = 'Project Remove Whitelist';
$lang->program->PRJManageProducts = 'Manage Products';
$lang->program->view = 'Program Detail';
@@ -131,6 +132,7 @@ $lang->program->endList[31] = 'One month';
$lang->program->endList[93] = 'Trimester';
$lang->program->endList[186] = 'Half yearly';
$lang->program->endList[365] = 'One year';
+$lang->program->endList[999] = 'Longtime';
$lang->program->noPRJ = 'No project.';
$lang->program->accessDenied = 'Access denied!';
@@ -223,12 +225,12 @@ $lang->program->PGMShowClosed = 'Closed programs.';
$lang->program->PGMTips = 'By modifying the parent item set, the associateable product also changes and becomes required. If no item set is selected, a product with the same name as the item is created by default and associated with that item.';
$lang->program->PGMChangeTips = 'After modifying the parent program set, the products associated with the project will be cleared, and the requirements, bugs and other data under the project will also be affected, is it modified?';
-$lang->program->PGMAclList['open'] = "Default(user who can visit the program can access it)";
$lang->program->PGMAclList['private'] = "Private (accessible to project portfolio holders and stakeholders)";
+$lang->program->PGMAclList['open'] = "Default(user who can visit the program can access it)";
+$lang->program->subPGMAclList['private'] = "Private (accessible to this program set leader and stakeholders)";
$lang->program->subPGMAclList['open'] = "Default(user who can visit the program can access it)";
$lang->program->subPGMAclList['program'] = "Open within the program (accessible to all higher-level program directors and affiliates, as well as to this program director and affiliates)";
-$lang->program->subPGMAclList['private'] = "Private (accessible to this program set leader and stakeholders)";
$lang->program->PGMAuthList['extend'] = 'Inherit(program privileges and company privileges)';
$lang->program->PGMAuthList['reset'] = 'Reset(program privileges only)';
diff --git a/module/program/lang/en.php b/module/program/lang/en.php
index 4cfd0d9f4b..2957f27e8c 100644
--- a/module/program/lang/en.php
+++ b/module/program/lang/en.php
@@ -30,6 +30,7 @@ $lang->program->PRJUpdateOrder = 'Order';
$lang->program->PRJSort = 'Order';
$lang->program->PRJWhitelist = 'Project Whitelist';
$lang->program->PRJAddWhitelist = 'Project Add Whitelist';
+$lang->program->PRJStoryConcept = 'Story Concept';
$lang->program->unbindWhielist = 'Project Remove Whitelist';
$lang->program->PRJManageProducts = 'Manage Products';
$lang->program->view = 'Program Detail';
@@ -131,6 +132,7 @@ $lang->program->endList[31] = 'One month';
$lang->program->endList[93] = 'Trimester';
$lang->program->endList[186] = 'Half yearly';
$lang->program->endList[365] = 'One year';
+$lang->program->endList[999] = 'Longtime';
$lang->program->noPRJ = 'No project.';
$lang->program->accessDenied = 'Access denied!';
@@ -223,12 +225,12 @@ $lang->program->PGMShowClosed = 'Closed programs.';
$lang->program->PGMTips = 'By modifying the parent item set, the associateable product also changes and becomes required. If no item set is selected, a product with the same name as the item is created by default and associated with that item.';
$lang->program->PGMChangeTips = 'After modifying the parent program set, the products associated with the project will be cleared, and the requirements, bugs and other data under the project will also be affected, is it modified?';
-$lang->program->PGMAclList['open'] = "Default(user who can visit the program can access it)";
$lang->program->PGMAclList['private'] = "Private (accessible to project portfolio holders and stakeholders)";
+$lang->program->PGMAclList['open'] = "Default(user who can visit the program can access it)";
+$lang->program->subPGMAclList['private'] = "Private (accessible to this program set leader and stakeholders)";
$lang->program->subPGMAclList['open'] = "Default(user who can visit the program can access it)";
$lang->program->subPGMAclList['program'] = "Open within the program (accessible to all higher-level program directors and affiliates, as well as to this program director and affiliates)";
-$lang->program->subPGMAclList['private'] = "Private (accessible to this program set leader and stakeholders)";
$lang->program->PGMAuthList['extend'] = 'Inherit(program privileges and company privileges)';
$lang->program->PGMAuthList['reset'] = 'Reset(program privileges only)';
diff --git a/module/program/lang/fr.php b/module/program/lang/fr.php
index d6a99bc405..24a9ce31cc 100644
--- a/module/program/lang/fr.php
+++ b/module/program/lang/fr.php
@@ -30,6 +30,7 @@ $lang->program->PRJUpdateOrder = 'Order';
$lang->program->PRJSort = 'Order';
$lang->program->PRJWhitelist = 'Project Whitelist';
$lang->program->PRJAddWhitelist = 'Project Add Whitelist';
+$lang->program->PRJStoryConcept = 'Story Concept';
$lang->program->unbindWhielist = 'Project Remove Whitelist';
$lang->program->PRJManageProducts = 'Manage Products';
$lang->program->view = 'Program Detail';
@@ -131,6 +132,7 @@ $lang->program->endList[31] = 'One month';
$lang->program->endList[93] = 'Trimester';
$lang->program->endList[186] = 'Half yearly';
$lang->program->endList[365] = 'One year';
+$lang->program->endList[999] = 'Longtime';
$lang->program->noPRJ = 'No project.';
$lang->program->accessDenied = 'Access denied!';
@@ -223,12 +225,12 @@ $lang->program->PGMShowClosed = 'Closed programs.';
$lang->program->PGMTips = 'By modifying the parent item set, the associateable product also changes and becomes required. If no item set is selected, a product with the same name as the item is created by default and associated with that item.';
$lang->program->PGMChangeTips = 'After modifying the parent program set, the products associated with the project will be cleared, and the requirements, bugs and other data under the project will also be affected, is it modified?';
-$lang->program->PGMAclList['open'] = "Default(user who can visit the program can access it)";
$lang->program->PGMAclList['private'] = "Private (accessible to project portfolio holders and stakeholders)";
+$lang->program->PGMAclList['open'] = "Default(user who can visit the program can access it)";
+$lang->program->subPGMAclList['private'] = "Private (accessible to this program set leader and stakeholders)";
$lang->program->subPGMAclList['open'] = "Default(user who can visit the program can access it)";
$lang->program->subPGMAclList['program'] = "Open within the program (accessible to all higher-level program directors and affiliates, as well as to this program director and affiliates)";
-$lang->program->subPGMAclList['private'] = "Private (accessible to this program set leader and stakeholders)";
$lang->program->PGMAuthList['extend'] = 'Inherit(program privileges and company privileges)';
$lang->program->PGMAuthList['reset'] = 'Reset(program privileges only)';
diff --git a/module/program/lang/vi.php b/module/program/lang/vi.php
index d6a99bc405..24a9ce31cc 100644
--- a/module/program/lang/vi.php
+++ b/module/program/lang/vi.php
@@ -30,6 +30,7 @@ $lang->program->PRJUpdateOrder = 'Order';
$lang->program->PRJSort = 'Order';
$lang->program->PRJWhitelist = 'Project Whitelist';
$lang->program->PRJAddWhitelist = 'Project Add Whitelist';
+$lang->program->PRJStoryConcept = 'Story Concept';
$lang->program->unbindWhielist = 'Project Remove Whitelist';
$lang->program->PRJManageProducts = 'Manage Products';
$lang->program->view = 'Program Detail';
@@ -131,6 +132,7 @@ $lang->program->endList[31] = 'One month';
$lang->program->endList[93] = 'Trimester';
$lang->program->endList[186] = 'Half yearly';
$lang->program->endList[365] = 'One year';
+$lang->program->endList[999] = 'Longtime';
$lang->program->noPRJ = 'No project.';
$lang->program->accessDenied = 'Access denied!';
@@ -223,12 +225,12 @@ $lang->program->PGMShowClosed = 'Closed programs.';
$lang->program->PGMTips = 'By modifying the parent item set, the associateable product also changes and becomes required. If no item set is selected, a product with the same name as the item is created by default and associated with that item.';
$lang->program->PGMChangeTips = 'After modifying the parent program set, the products associated with the project will be cleared, and the requirements, bugs and other data under the project will also be affected, is it modified?';
-$lang->program->PGMAclList['open'] = "Default(user who can visit the program can access it)";
$lang->program->PGMAclList['private'] = "Private (accessible to project portfolio holders and stakeholders)";
+$lang->program->PGMAclList['open'] = "Default(user who can visit the program can access it)";
+$lang->program->subPGMAclList['private'] = "Private (accessible to this program set leader and stakeholders)";
$lang->program->subPGMAclList['open'] = "Default(user who can visit the program can access it)";
$lang->program->subPGMAclList['program'] = "Open within the program (accessible to all higher-level program directors and affiliates, as well as to this program director and affiliates)";
-$lang->program->subPGMAclList['private'] = "Private (accessible to this program set leader and stakeholders)";
$lang->program->PGMAuthList['extend'] = 'Inherit(program privileges and company privileges)';
$lang->program->PGMAuthList['reset'] = 'Reset(program privileges only)';
diff --git a/module/project/lang/zh-cn.php b/module/project/lang/zh-cn.php
index 571b8b5a19..d88d39fb88 100644
--- a/module/project/lang/zh-cn.php
+++ b/module/project/lang/zh-cn.php
@@ -57,8 +57,8 @@ $lang->project->totalLeft = '剩余';
$lang->project->progress = '进度';
$lang->project->hours = '预计 %s 消耗 %s 剩余 %s';
$lang->project->viewBug = '查看bug';
-$lang->project->createStory = "添加{$lang->projectSRCommon}";
$lang->project->noProduct = "无{$lang->executionCommon}";
+$lang->project->createStory = "添加{$lang->projectSRCommon}";
$lang->project->storyTitle = "{$lang->projectSRCommon}名称";
$lang->project->all = '所有';
$lang->project->undone = '未完成';
@@ -264,6 +264,7 @@ $lang->project->byPeriod = '按时间段';
$lang->project->byUser = '按用户';
$lang->project->noProject = "暂时没有{$lang->executionCommon}。";
$lang->project->noMembers = '暂时没有团队成员。';
+$lang->project->workloadTotal = "工作量比例累计不应当超过100, 当前产品下的工作量之和为:%s";
/* 交互提示。*/
$lang->project->confirmDelete = "您确定删除{$lang->executionCommon}[%s]吗?";
@@ -285,7 +286,6 @@ $lang->project->fixFirstWithLeft = '修改剩余工时';
$lang->project->unfinishedProject = "该{$lang->executionCommon}下还有";
$lang->project->unfinishedTask = "[%s]个未完成的任务,";
$lang->project->unresolvedBug = "[%s]个未解决的bug,";
-$lang->project->workloadTotal = "工作量比例累计不应当超过100, 当前产品下的工作量之和为:%s";
$lang->project->action = new stdclass();
$lang->project->action->opened = '$date, 由
$actor 创建。$extra' . "\n";
diff --git a/module/projectrelease/lang/de.php b/module/projectrelease/lang/de.php
index 4c1f08579a..8d011f87fb 100644
--- a/module/projectrelease/lang/de.php
+++ b/module/projectrelease/lang/de.php
@@ -22,4 +22,6 @@ $lang->projectrelease->changeStatus = "Status ändern";
$lang->projectrelease->batchUnlink = "Mehrere entfernen";
$lang->projectrelease->batchUnlinkStory = "Mehrere Storys entfernen";
$lang->projectrelease->batchUnlinkBug = "Mehrere Bugs entfernen";
+$lang->projectrelease->unlinkStory = "Unlink {$lang->productSRCommon}";
+$lang->projectrelease->unlinkBug = 'Unlink Bug';
$lang->projectrelease->export = 'Export as HTML';
diff --git a/module/projectrelease/lang/en.php b/module/projectrelease/lang/en.php
index a9acfabc51..ea6695bf04 100644
--- a/module/projectrelease/lang/en.php
+++ b/module/projectrelease/lang/en.php
@@ -22,4 +22,6 @@ $lang->projectrelease->changeStatus = "Change Status";
$lang->projectrelease->batchUnlink = "Batch Unlink";
$lang->projectrelease->batchUnlinkStory = "Batch Unlink Stories";
$lang->projectrelease->batchUnlinkBug = "Batch Unlink Bugs";
+$lang->projectrelease->unlinkStory = "Unlink {$lang->productSRCommon}";
+$lang->projectrelease->unlinkBug = 'Unlink Bug';
$lang->projectrelease->export = 'Export as HTML';
diff --git a/module/projectrelease/lang/fr.php b/module/projectrelease/lang/fr.php
index 4d9d4175ba..bd7eb1eb0b 100644
--- a/module/projectrelease/lang/fr.php
+++ b/module/projectrelease/lang/fr.php
@@ -22,4 +22,6 @@ $lang->projectrelease->changeStatus = "Change Statut";
$lang->projectrelease->batchUnlink = "Retirer par Lot";
$lang->projectrelease->batchUnlinkStory = "Retirer Stories par Lot";
$lang->projectrelease->batchUnlinkBug = "Retirer Bugs par Lot";
+$lang->projectrelease->unlinkStory = "Unlink {$lang->productSRCommon}";
+$lang->projectrelease->unlinkBug = 'Unlink Bug';
$lang->projectrelease->export = 'Export HTML';
diff --git a/module/projectrelease/lang/vi.php b/module/projectrelease/lang/vi.php
index fa39aaec19..a6af7489c8 100644
--- a/module/projectrelease/lang/vi.php
+++ b/module/projectrelease/lang/vi.php
@@ -22,4 +22,6 @@ $lang->projectrelease->changeStatus = "Thay đổi tình trạng";
$lang->projectrelease->batchUnlink = "Hủy liên kết hàng loạt";
$lang->projectrelease->batchUnlinkStory = "Hủy liên kết câu chuyện hàng loạt";
$lang->projectrelease->batchUnlinkBug = "Hủy liên kết Bug hàng loạt";
+$lang->projectrelease->unlinkStory = "Unlink {$lang->productSRCommon}";
+$lang->projectrelease->unlinkBug = 'Unlink Bug';
$lang->projectrelease->export = 'Xuất ra HTML';
diff --git a/module/todo/lang/de.php b/module/todo/lang/de.php
index 9d6514f966..c106aa1b13 100644
--- a/module/todo/lang/de.php
+++ b/module/todo/lang/de.php
@@ -33,6 +33,9 @@ $lang->todo->import = "Importieren";
$lang->todo->legendBasic = "Basis Info";
$lang->todo->cycle = "Wiederkehrend";
$lang->todo->cycleConfig = "Wiederkehrend setzen";
+$lang->todo->project = "Project";
+$lang->todo->product = "Product";
+$lang->todo->execution = "Stage/" . $lang->executionCommon;
$lang->todo->reasonList['story'] = "Story übertragen";
$lang->todo->reasonList['task'] = "Aufgabe übertragen";
diff --git a/module/todo/lang/fr.php b/module/todo/lang/fr.php
index 032732fab2..0c85ceef4a 100644
--- a/module/todo/lang/fr.php
+++ b/module/todo/lang/fr.php
@@ -33,6 +33,9 @@ $lang->todo->import = "Importer";
$lang->todo->legendBasic = "Infos de Base";
$lang->todo->cycle = "Rendre Récurrent";
$lang->todo->cycleConfig = "Récurrence";
+$lang->todo->project = "Project";
+$lang->todo->product = "Product";
+$lang->todo->execution = "Stage/" . $lang->executionCommon;
$lang->todo->reasonList['story'] = "Convertir en Story";
$lang->todo->reasonList['task'] = "Convertir en Tâche";
diff --git a/module/todo/lang/vi.php b/module/todo/lang/vi.php
index 8065a54597..c5896bc4c3 100644
--- a/module/todo/lang/vi.php
+++ b/module/todo/lang/vi.php
@@ -33,6 +33,9 @@ $lang->todo->import = "Nhập";
$lang->todo->legendBasic = "Thông tin cơ bản";
$lang->todo->cycle = "Lặp lại";
$lang->todo->cycleConfig = "Cấu hình lặp lại";
+$lang->todo->project = "Project";
+$lang->todo->product = "Product";
+$lang->todo->execution = "Stage/" . $lang->executionCommon;
$lang->todo->reasonList['story'] = "Chuyển thành câu chuyện";
$lang->todo->reasonList['task'] = "Chuyển thành nhiệm vụ";
diff --git a/module/upgrade/lang/de.php b/module/upgrade/lang/de.php
index 8f79e77474..fc30f77136 100644
--- a/module/upgrade/lang/de.php
+++ b/module/upgrade/lang/de.php
@@ -50,6 +50,8 @@ $lang->upgrade->afterDeleted = 'File is not deleted. Please refresh after you d
$lang->upgrade->mergeProgram = 'Data Merge';
$lang->upgrade->mergeTips = 'Data Migration Tips';
$lang->upgrade->to20Demo = 'View version 20 of the demo';
+$lang->upgrade->demoURL = 'http://zentao20.demo.zentao.net';
+$lang->upgrade->videoURL = 'https://qc.zentao.net/zentao20.mp4';
$lang->upgrade->to20Tips = 'Zentao 20 upgrade tips';
$lang->upgrade->to20Button = 'I have done the backup, start the upgrade!!';
$lang->upgrade->to20TipsHeader= "
Dear user, thank you for your support of ZenTao。Since version 20, Zendo has been fully upgraded to a universal project management platform. Please see the following video for more information:
";
diff --git a/module/upgrade/lang/en.php b/module/upgrade/lang/en.php
index 1704fb5417..6e6c0c9bb8 100644
--- a/module/upgrade/lang/en.php
+++ b/module/upgrade/lang/en.php
@@ -50,6 +50,8 @@ $lang->upgrade->afterDeleted = 'File is not deleted. Please refresh after you d
$lang->upgrade->mergeProgram = 'Data Merge';
$lang->upgrade->mergeTips = 'Data Migration Tips';
$lang->upgrade->to20Demo = 'View version 20 of the demo';
+$lang->upgrade->demoURL = 'http://zentao20.demo.zentao.net';
+$lang->upgrade->videoURL = 'https://qc.zentao.net/zentao20.mp4';
$lang->upgrade->to20Tips = 'Zentao 20 upgrade tips';
$lang->upgrade->to20Button = 'I have done the backup, start the upgrade!!';
$lang->upgrade->to20TipsHeader= "
Dear user, thank you for your support of ZenTao。Since version 20, Zendo has been fully upgraded to a universal project management platform. Please see the following video for more information(If the video can not play properly, please visit directly Zentao20):
";
diff --git a/module/upgrade/lang/fr.php b/module/upgrade/lang/fr.php
index 659dfd4c73..6e5c0237a7 100644
--- a/module/upgrade/lang/fr.php
+++ b/module/upgrade/lang/fr.php
@@ -50,6 +50,8 @@ $lang->upgrade->afterDeleted = "Le fichier n'est pas supprimé. Recommencez apr
$lang->upgrade->mergeProgram = 'Data Merge';
$lang->upgrade->mergeTips = 'Data Migration Tips';
$lang->upgrade->to20Demo = 'View version 20 of the demo';
+$lang->upgrade->demoURL = 'http://zentao20.demo.zentao.net';
+$lang->upgrade->videoURL = 'https://qc.zentao.net/zentao20.mp4';
$lang->upgrade->to20Tips = 'Zentao 20 upgrade tips';
$lang->upgrade->to20Button = 'I have done the backup, start the upgrade!!';
$lang->upgrade->to20TipsHeader= "
Dear user, thank you for your support of ZenTao。Since version 20, Zendo has been fully upgraded to a universal project management platform. Please see the following video for more information:
";
diff --git a/module/upgrade/lang/vi.php b/module/upgrade/lang/vi.php
index 5f234fd18b..41ff64938d 100644
--- a/module/upgrade/lang/vi.php
+++ b/module/upgrade/lang/vi.php
@@ -50,6 +50,8 @@ $lang->upgrade->afterDeleted = 'File không là deleted. Vui lòng refresh afte
$lang->upgrade->mergeProgram = 'Data Merge';
$lang->upgrade->mergeTips = 'Data Migration Tips';
$lang->upgrade->to20Demo = 'View version 20 of the demo';
+$lang->upgrade->demoURL = 'http://zentao20.demo.zentao.net';
+$lang->upgrade->videoURL = 'https://qc.zentao.net/zentao20.mp4';
$lang->upgrade->to20Tips = 'Zentao 20 upgrade tips';
$lang->upgrade->to20Button = 'I have done the backup, start the upgrade!!';
$lang->upgrade->to20TipsHeader= "
Dear user, thank you for your support of ZenTao。Since version 20, Zendo has been fully upgraded to a universal project management platform. Please see the following video for more information:
";
From 48c725fe44d296ca8773af7327e937f32b7a4556 Mon Sep 17 00:00:00 2001
From: leiyong <1549684884@qq.com>
Date: Fri, 18 Dec 2020 11:27:19 +0800
Subject: [PATCH 6/6] * Adjust code.
---
module/bug/control.php | 6 +++---
module/product/view/showerrornone.html.php | 2 +-
module/productplan/view/linkbug.html.php | 2 +-
module/productplan/view/view.html.php | 2 +-
module/story/view/track.html.php | 2 +-
module/testcase/model.php | 2 +-
6 files changed, 8 insertions(+), 8 deletions(-)
diff --git a/module/bug/control.php b/module/bug/control.php
index 744893d9e5..b4556bebd8 100644
--- a/module/bug/control.php
+++ b/module/bug/control.php
@@ -31,8 +31,8 @@ class bug extends control
$this->loadModel('action');
$this->loadModel('story');
$this->loadModel('task');
- $this->view->products = $this->products = $this->product->getProductPairsByProject($this->session->PRJ);
+ $this->view->products = $this->products = $this->product->getProductPairsByProject($this->session->PRJ);
if(empty($this->products)) die($this->locate($this->createLink('product', 'showErrorNone', "fromModule=bug")));
}
@@ -598,13 +598,13 @@ class bug extends control
/* Get product info. */
$productID = $bug->product;
- $productName = $this->products[$productID];
+ $productName = isset($this->products[$productID]) ? $this->products[$productID] : '';
$branches = $this->session->currentProductType == 'normal' ? array() : $this->loadModel('branch')->getPairs($bug->product);
$this->executeHooks($bugID);
/* Header and positon. */
- $this->view->title = "BUG #$bug->id $bug->title - " . $this->products[$productID];
+ $this->view->title = "BUG #$bug->id $bug->title - " . $productName;
$this->view->position[] = html::a($this->createLink('bug', 'browse', "productID=$productID"), $productName);
$this->view->position[] = $this->lang->bug->view;
diff --git a/module/product/view/showerrornone.html.php b/module/product/view/showerrornone.html.php
index fe749b95d9..c19aa47663 100644
--- a/module/product/view/showerrornone.html.php
+++ b/module/product/view/showerrornone.html.php
@@ -11,7 +11,7 @@
*/
?>
-
+
product->noProduct;?> id&programID=$project->parent", " " . $lang->program->PRJManageProducts, '', "class='btn btn-info'");?>
diff --git a/module/productplan/view/linkbug.html.php b/module/productplan/view/linkbug.html.php
index f4a5f65650..f5a9175854 100644
--- a/module/productplan/view/linkbug.html.php
+++ b/module/productplan/view/linkbug.html.php
@@ -42,7 +42,7 @@
id => sprintf('%03d', $bug->id)));?>
bug->priList, $bug->pri, $bug->pri)?> |
-
createLink('bug', 'view', "bugID=$bug->id", '', true), $bug->title, '', "data-toggle='modal' data-type='iframe' data-width='90%'");?> |
+
createLink('bug', 'view', "bugID=$bug->id", '', true, $bug->PRJ), $bug->title, '', "data-toggle='modal' data-type='iframe' data-width='90%'");?> |
openedBy);?> |
assignedTo);?> |
diff --git a/module/productplan/view/view.html.php b/module/productplan/view/view.html.php
index 8a192f8492..2ecfb9f2c6 100644
--- a/module/productplan/view/view.html.php
+++ b/module/productplan/view/view.html.php
@@ -392,7 +392,7 @@
|
bug->priList, $bug->pri, $bug->pri);?> |
-
createLink('bug', 'view', "bugID=$bug->id"), $bug->title);?> |
+
createLink('bug', 'view', "bugID=$bug->id", '', false, $bug->PRJ), $bug->title);?> |
openedBy);?> |
assignedTo);?> |
diff --git a/module/story/view/track.html.php b/module/story/view/track.html.php
index 7176c86fa6..96e3fc9cf7 100644
--- a/module/story/view/track.html.php
+++ b/module/story/view/track.html.php
@@ -51,7 +51,7 @@
|
case as $caseID => $case):?>
- createLink('testcase', 'view', "caseID=$caseID"), $case->title, '', "title='$case->title'") . ' ';?>
+ createLink('testcase', 'view', "caseID=$caseID", '', false, $case->PRJ), $case->title, '', "title='$case->title'") . ' ';?>
|
diff --git a/module/testcase/model.php b/module/testcase/model.php
index f96178707b..1cad66fefe 100644
--- a/module/testcase/model.php
+++ b/module/testcase/model.php
@@ -559,7 +559,7 @@ class testcaseModel extends model
*/
public function getStoryCases($storyID)
{
- return $this->dao->select('id, title, pri, type, status, lastRunner, lastRunDate, lastRunResult')
+ return $this->dao->select('id, PRJ, title, pri, type, status, lastRunner, lastRunDate, lastRunResult')
->from(TABLE_CASE)
->where('story')->eq((int)$storyID)
->andWhere('deleted')->eq(0)
|