* add changelog and zh-tw lang.

This commit is contained in:
wangyidong
2021-07-20 09:58:58 +08:00
parent ab108bd178
commit 54ff43eb6f
24 changed files with 280 additions and 112 deletions
+25
View File
@@ -1,3 +1,28 @@
2021-07-20 15.2
27297 调整产品下拉菜单信息展现方式
27298 调整执行下拉菜单信息展现方式
27300 调整测试中产品下拉菜单信息展现方式
27304 开始升级引导页面中增加新版本功能的详细说明
27309 在进行数据迁移页面增加全选/取消全选功能。
27316 实现产品的批量编辑功能
27317 项目下迭代的批量编辑中增加修改所属项目功能
27318 合并禅道15.1的代码
27325 执行的二级导航中增加执行看板菜单
27326 实现执行的看板视图功能
27296 调整项目下拉菜单信息展现方式
27330 数据迁移提示信息中,调整相关文案避免误导用户
27332 实现不同泳道可以显示不同的背景颜色
27333 实现执行看板的卡片功能
27334 执行看板的卡片支持点击跳转到执行任务列表页面
27335 安装禅道新版本后后台可以设置使用模式
27338 实现把历史的项目作为项目升级的数据迁移功能
27339 使用把历史的项目作为项目升级后,系统自动创建一个与该项目同名的迭代
27342 执行看板中鼠标悬浮到卡片上时可以显示完整卡片信息
27343 安装禅道新版本后,引导初次进入禅道页面的管理人员设置使用模式
27344 地盘首页中增加角色流程图区块
27345 实现把历史的项目作为执行升级的数据迁移功能
27327 看板列设定最多显示5个卡片的限制
2021-06-25 15.0.3
修复的Bug
6947 安装学院插件后,编辑用户无法保存
+1
View File
@@ -103,6 +103,7 @@ $lang->action->objectTypes['entry'] = '應用';
$lang->action->objectTypes['webhook'] = 'Webhook';
$lang->action->objectTypes['team'] = '團隊';
$lang->action->objectTypes['whitelist'] = '白名單';
$lang->action->objectTypes['pipeline'] = 'GitLib';
/* 用來描述操作歷史記錄。*/
$lang->action->desc = new stdclass();
+63 -52
View File
@@ -71,6 +71,7 @@ $lang->block->estimatedHours = '預計';
$lang->block->consumedHours = '已消耗';
$lang->block->time = '第';
$lang->block->week = '周';
$lang->block->month = '月';
$lang->block->selectProduct = '選擇產品';
$lang->block->of = '的';
$lang->block->remain = '剩餘工時';
@@ -279,63 +280,69 @@ $lang->block->default['full']['my']['2']['block'] = 'dynamic';
$lang->block->default['full']['my']['2']['grid'] = 4;
$lang->block->default['full']['my']['2']['source'] = '';
$lang->block->default['full']['my']['3']['title'] = '我的待辦';
$lang->block->default['full']['my']['3']['block'] = 'list';
$lang->block->default['full']['my']['3']['grid'] = 4;
$lang->block->default['full']['my']['3']['source'] = 'todo';
$lang->block->default['full']['my']['3']['params']['count'] = '20';
$lang->block->default['full']['my']['3']['title'] = '流程圖';
$lang->block->default['full']['my']['3']['block'] = 'flowchart';
$lang->block->default['full']['my']['3']['source'] = '';
$lang->block->default['full']['my']['3']['grid'] = 8;
$lang->block->default['full']['my']['4']['title'] = '我的待辦';
$lang->block->default['full']['my']['4']['block'] = 'list';
$lang->block->default['full']['my']['4']['grid'] = 4;
$lang->block->default['full']['my']['4']['source'] = 'todo';
$lang->block->default['full']['my']['4']['params']['count'] = '20';
if($config->systemMode == 'new')
{
$lang->block->default['full']['my']['4']['title'] = '項目統計';
$lang->block->default['full']['my']['4']['block'] = 'statistic';
$lang->block->default['full']['my']['4']['source'] = 'project';
$lang->block->default['full']['my']['4']['grid'] = 8;
$lang->block->default['full']['my']['4']['params']['count'] = '20';
$lang->block->default['full']['my']['5']['title'] = '項目統計';
$lang->block->default['full']['my']['5']['block'] = 'statistic';
$lang->block->default['full']['my']['5']['source'] = 'project';
$lang->block->default['full']['my']['5']['grid'] = 8;
$lang->block->default['full']['my']['5']['params']['count'] = '20';
}
$lang->block->default['full']['my']['5']['title'] = '我的貢獻';
$lang->block->default['full']['my']['5']['block'] = 'contribute';
$lang->block->default['full']['my']['5']['source'] = '';
$lang->block->default['full']['my']['5']['grid'] = 4;
$lang->block->default['full']['my']['6']['title'] = '我的貢獻';
$lang->block->default['full']['my']['6']['block'] = 'contribute';
$lang->block->default['full']['my']['6']['source'] = '';
$lang->block->default['full']['my']['6']['grid'] = 4;
$lang->block->default['full']['my']['6']['title'] = '我近期參與的項目';
$lang->block->default['full']['my']['6']['block'] = 'recentproject';
$lang->block->default['full']['my']['6']['source'] = 'project';
$lang->block->default['full']['my']['6']['grid'] = 8;
$lang->block->default['full']['my']['7']['title'] = '待處理';
$lang->block->default['full']['my']['7']['block'] = 'assigntome';
$lang->block->default['full']['my']['7']['source'] = '';
$lang->block->default['full']['my']['7']['title'] = '我近期參與的項目';
$lang->block->default['full']['my']['7']['block'] = 'recentproject';
$lang->block->default['full']['my']['7']['source'] = 'project';
$lang->block->default['full']['my']['7']['grid'] = 8;
$lang->block->default['full']['my']['7']['params']['todoNum'] = '20';
$lang->block->default['full']['my']['7']['params']['taskNum'] = '20';
$lang->block->default['full']['my']['7']['params']['bugNum'] = '20';
$lang->block->default['full']['my']['7']['params']['riskNum'] = '20';
$lang->block->default['full']['my']['7']['params']['issueNum'] = '20';
$lang->block->default['full']['my']['7']['params']['storyNum'] = '20';
$lang->block->default['full']['my']['8']['title'] = '待處理';
$lang->block->default['full']['my']['8']['block'] = 'assigntome';
$lang->block->default['full']['my']['8']['source'] = '';
$lang->block->default['full']['my']['8']['grid'] = 8;
$lang->block->default['full']['my']['8']['params']['todoNum'] = '20';
$lang->block->default['full']['my']['8']['params']['taskNum'] = '20';
$lang->block->default['full']['my']['8']['params']['bugNum'] = '20';
$lang->block->default['full']['my']['8']['params']['riskNum'] = '20';
$lang->block->default['full']['my']['8']['params']['issueNum'] = '20';
$lang->block->default['full']['my']['8']['params']['storyNum'] = '20';
$lang->block->default['full']['my']['8']['params']['meetingNum'] = '20';
if($config->systemMode == 'new')
{
$lang->block->default['full']['my']['8']['title'] = '項目人力投入';
$lang->block->default['full']['my']['8']['block'] = 'projectteam';
$lang->block->default['full']['my']['8']['source'] = 'project';
$lang->block->default['full']['my']['8']['grid'] = 8;
$lang->block->default['full']['my']['9']['title'] = '項目人力投入';
$lang->block->default['full']['my']['9']['block'] = 'projectteam';
$lang->block->default['full']['my']['9']['source'] = 'project';
$lang->block->default['full']['my']['9']['grid'] = 8;
}
$lang->block->default['full']['my']['9']['title'] = '項目列表';
$lang->block->default['full']['my']['9']['block'] = 'project';
$lang->block->default['full']['my']['9']['source'] = 'project';
$lang->block->default['full']['my']['9']['grid'] = 8;
$lang->block->default['full']['my']['10']['title'] = '項目列表';
$lang->block->default['full']['my']['10']['block'] = 'project';
$lang->block->default['full']['my']['10']['source'] = 'project';
$lang->block->default['full']['my']['10']['grid'] = 8;
if($config->systemMode == 'classic')
{
$lang->block->default['full']['my']['9']['block'] = 'execution';
$lang->block->default['full']['my']['9']['source'] = 'execution';
$lang->block->default['full']['my']['10']['block'] = 'execution';
$lang->block->default['full']['my']['10']['source'] = 'execution';
}
$lang->block->default['full']['my']['9']['params']['orderBy'] = 'id_desc';
$lang->block->default['full']['my']['9']['params']['count'] = '15';
$lang->block->default['full']['my']['10']['params']['orderBy'] = 'id_desc';
$lang->block->default['full']['my']['10']['params']['count'] = '15';
$lang->block->count = '數量';
$lang->block->type = '類型';
@@ -355,6 +362,7 @@ $lang->block->availableBlocks->build = '版本列表';
$lang->block->availableBlocks->testtask = '測試版本列表';
$lang->block->availableBlocks->risk = '我的風險';
$lang->block->availableBlocks->issue = '我的問題';
$lang->block->availableBlocks->meeting = '我的會議';
if($config->systemMode == 'new') $lang->block->moduleList['project'] = '項目';
$lang->block->moduleList['product'] = $lang->productCommon;
@@ -472,12 +480,13 @@ $lang->block->orderByList->story['status_desc'] = '狀態倒序';
$lang->block->orderByList->story['stage_asc'] = '階段正序';
$lang->block->orderByList->story['stage_desc'] = '階段倒序';
$lang->block->todoNum = '待辦數';
$lang->block->taskNum = '任務數';
$lang->block->bugNum = 'Bug數';
$lang->block->riskNum = '風險數';
$lang->block->issueNum = '問題數';
$lang->block->storyNum = '需求數';
$lang->block->todoNum = '待辦數';
$lang->block->taskNum = '任務數';
$lang->block->bugNum = 'Bug數';
$lang->block->riskNum = '風險數';
$lang->block->issueNum = '問題數';
$lang->block->storyNum = '需求數';
$lang->block->meetingNum = '會議數';
$lang->block->typeList = new stdclass();
@@ -568,9 +577,11 @@ $lang->block->welcomeList['19:00'] = '%s,晚上好!';
$lang->block->gridOptions[8] = '左側';
$lang->block->gridOptions[4] = '右側';
$lang->block->flowchart = array();
$lang->block->flowchart['admin'] = array('管理員', '維護公司', '添加用戶', '維護權限');
$lang->block->flowchart['product'] = array($lang->productCommon . '經理', '創建' . $lang->productCommon, '維護模組', "維護計劃", "維護{$lang->SRCommon}", '創建發佈');
$lang->block->flowchart['execution'] = array($lang->executionCommon . '經理', '創建' . $lang->executionCommon, '維護團隊', '關聯' . $lang->productCommon, "關聯{$lang->SRCommon}", '分解任務');
$lang->block->flowchart['dev'] = array('研發人員', '領取任務和Bug', '更新狀態', '完成任務和Bug');
$lang->block->flowchart['tester'] = array('測試人員', '撰寫用例', '執行用例', '提交Bug', '驗證Bug', '關閉Bug');
$lang->block->flowchart = array();
$lang->block->flowchart['admin'] = array('管理員', '維護公司', '添加用戶', '維護權限');
if($config->systemMode == 'new') $lang->block->flowchart['program'] = array('項目集負責人', '創建項目集', '關聯產品', "創建項目", "制定預算和規劃", '添加干係人');
$lang->block->flowchart['product'] = array($lang->productCommon . '經理', '創建' . $lang->productCommon, '維護模組', "維護計劃", "維護需求", '創建發佈');
$lang->block->flowchart['project'] = array('項目經理', '創建' . $lang->executionCommon, '維護團隊', "關聯需求", '分解任務', '跟蹤進度');
if($config->systemMode == 'new') $lang->block->flowchart['project'] = array('項目經理', '創建項目、' . $lang->executionCommon, '維護團隊', "關聯需求", '分解任務', '跟蹤進度');
$lang->block->flowchart['dev'] = array('研發人員', '領取任務和Bug', '設計實現方案', '更新狀態', '完成任務和Bug', '提交代碼');
$lang->block->flowchart['tester'] = array('測試人員', '撰寫用例', '執行用例', '提交Bug', '驗證Bug', '關閉Bug');
+1
View File
@@ -24,6 +24,7 @@ $lang->bug->storyVersion = 'Story Version';
$lang->bug->color = 'Color';
$lang->bug->task = 'Task';
$lang->bug->title = 'Title';
$lang->bug->sync2gitlab = 'Sync gitlab';
$lang->bug->severity = 'Severity';
$lang->bug->severityAB = 'S';
$lang->bug->pri = 'Priority';
+2 -1
View File
@@ -24,6 +24,7 @@ $lang->bug->storyVersion = "{$lang->SRCommon}版本";
$lang->bug->color = '標題顏色';
$lang->bug->task = '相關任務';
$lang->bug->title = 'Bug標題';
$lang->bug->sync2gitlab = '同步gitlab';
$lang->bug->severity = '嚴重程度';
$lang->bug->severityAB = '級別';
$lang->bug->pri = '優先順序';
@@ -181,7 +182,7 @@ $lang->bug->remindTask = '該Bug已經轉化為任務,是否更新
$lang->bug->skipClose = 'Bug %s 不是已解決狀態,不能關閉。';
$lang->bug->executionAccessDenied = "您無權訪問該Bug所屬的{$lang->executionCommon}!";
$lang->bug->stepsNotEmpty = "重現步驟不能為空。";
$lang->bug->confirmUnlinkBuild = "更換解决版本將取消與舊版本的關聯,您確定取消該bug與%s的關聯嗎?";
$lang->bug->confirmUnlinkBuild = "更換解決版本將取消與舊版本的關聯,您確定取消該bug與%s的關聯嗎?";
/* 模板。*/
$lang->bug->tplStep = "<p>[步驟]</p><br/>";
+3 -2
View File
@@ -53,7 +53,6 @@ $lang->export = '導出';
$lang->setFileName = '檔案名:';
$lang->submitting = '稍候...';
$lang->save = '保存';
$lang->saveSuccess = '保存成功';
$lang->confirm = '確認';
$lang->preview = '查看';
$lang->goback = '返回';
@@ -81,6 +80,7 @@ $lang->switchDisplay = '切換顯示';
$lang->expand = '展開全部';
$lang->collapse = '收起';
$lang->saveSuccess = '保存成功';
$lang->importSuccess = '導入成功';
$lang->fail = '失敗';
$lang->addFiles = '上傳了附件 ';
$lang->files = '附件 ';
@@ -209,7 +209,8 @@ $lang->my->work = '待處理';
$lang->project->list = '項目列表';
$lang->execution->list = "{$lang->executionCommon}列表";
$lang->execution->executionKanban = "{$lang->execution->common}看板";
$lang->execution->all = "{$lang->execution->common}列表";
$lang->doc->recent = '最近文檔';
$lang->doc->my = '我的文檔';
+4 -3
View File
@@ -213,9 +213,10 @@ else
$lang->custom->workingList['full'] = '完整研發管理工具';
$lang->custom->menuTip = '點擊顯示或隱藏導航條目,拖拽來更改顯示順序。';
$lang->custom->saveFail = '保存失敗!';
$lang->custom->page = '頁面';
$lang->custom->menuTip = '點擊顯示或隱藏導航條目,拖拽來更改顯示順序。';
$lang->custom->saveFail = '保存失敗!';
$lang->custom->page = '頁面';
$lang->custom->changeClassicTip = '切換為老版本的習慣後,系統將取消項目集功能。';
$lang->custom->scoreStatus[1] = '開啟';
$lang->custom->scoreStatus[0] = '關閉';
+16
View File
@@ -405,6 +405,14 @@ $lang->execution->featureBar['all']['doing'] = $lang->execution->statusList[
$lang->execution->featureBar['all']['suspended'] = $lang->execution->statusList['suspended'];
$lang->execution->featureBar['all']['closed'] = $lang->execution->statusList['closed'];
$lang->execution->myExecutions = '我參與的';
$lang->execution->doingProject = '進行中的項目';
$lang->execution->kanbanColType['wait'] = $lang->execution->statusList['wait'] . '的' . $lang->execution->common;
$lang->execution->kanbanColType['doing'] = $lang->execution->statusList['doing'] . '的' . $lang->execution->common;
$lang->execution->kanbanColType['suspended'] = $lang->execution->statusList['suspended'] . '的' . $lang->execution->common;
$lang->execution->kanbanColType['closed'] = $lang->execution->statusList['closed'] . '的' . $lang->execution->common;
$lang->execution->treeLevel = array();
$lang->execution->treeLevel['all'] = '全部展開';
$lang->execution->treeLevel['root'] = '全部摺疊';
@@ -416,3 +424,11 @@ $lang->execution->action->opened = '$date, 由 <strong>$actor</strong> 創建
$lang->execution->action->managed = '$date, 由 <strong>$actor</strong> 維護。$extra' . "\n";
$lang->execution->action->edited = '$date, 由 <strong>$actor</strong> 編輯。$extra' . "\n";
$lang->execution->action->extra = '相關產品為 %s。';
$lang->execution->statusColorList = array();
$lang->execution->statusColorList['wait'] = '#0991FF';
$lang->execution->statusColorList['doing'] = '#0BD986';
$lang->execution->statusColorList['suspended'] = '#fdc137';
$lang->execution->statusColorList['closed'] = '#838A9D';
$lang->execution->boardColorList = '#F1F3F5,#ECF4FD,#F6EDF7,#FFEDED,#FFF7EB,#FFF7E1';
+45
View File
@@ -0,0 +1,45 @@
<?php
$lang->gitlab = new stdclass;
$lang->gitlab->common = 'GitLab';
$lang->gitlab->browse = '瀏覽GitLab';
$lang->gitlab->create = '添加GitLab';
$lang->gitlab->edit = '編輯GitLab';
$lang->gitlab->bindUser = '綁定用戶';
$lang->gitlab->webhook = 'webhook';
$lang->gitlab->bindProduct = '關聯產品';
$lang->gitlab->importIssue = '關聯issue';
$lang->gitlab->delete = '刪除GitLab';
$lang->gitlab->confirmDelete = '確認刪除該GitLab嗎?';
$lang->gitlab->gitlabAccount = 'GitLab用戶';
$lang->gitlab->zentaoAccount = '禪道用戶';
$lang->gitlab->browseAction = 'GitLab列表';
$lang->gitlab->deleteAction = '刪除GitLab';
$lang->gitlab->gitlabProject = "{$lang->gitlab->common}項目";
$lang->gitlab->gitlabIssue = "{$lang->gitlab->common} issue";
$lang->gitlab->zentaoProduct = '禪道產品';
$lang->gitlab->objectType = '類型'; // task, bug, story
$lang->gitlab->id = 'ID';
$lang->gitlab->name = "{$lang->gitlab->common}名稱";
$lang->gitlab->url = '服務地址';
$lang->gitlab->token = 'Token';
$lang->gitlab->defaultProject = '預設項目';
$lang->gitlab->private = 'MD5驗證';
$lang->gitlab->lblCreate = '添加GitLab伺服器';
$lang->gitlab->desc = '描述';
$lang->gitlab->tokenFirst = 'Token不為空時,優先使用Token。';
$lang->gitlab->tips = '使用密碼時,請在GitLab全局安全設置中禁用"防止跨站點請求偽造"選項。';
$lang->gitlab->placeholder = new stdclass;
$lang->gitlab->placeholder->name = '';
$lang->gitlab->placeholder->url = "請填寫Gitlab Server首頁的訪問地址,如:https://gitlab.zentao.net。";
$lang->gitlab->placeholder->token = "請填寫具有admin權限賬戶的access token";
$lang->gitlab->noImportableIssues = "目前沒有可供導入的issue。";
$lang->gitlab->tokenError = "當前token非管理員權限。";
$lang->gitlab->hostError = "無效的GitLab服務地址。";
$lang->gitlab->bindUserError = "不能重複綁定用戶 %s";
$lang->gitlab->importIssueError = "未選擇該issue所屬的執行。";
$lang->gitlab->importIssueWarn = "存在導入失敗的issue,可再次嘗試導入。";
+1 -1
View File
@@ -130,7 +130,7 @@ $lang->install->password = '管理員密碼';
$lang->install->errorEmptyPassword = '密碼不能為空';
$lang->install->selectedMode = '選擇模式';
$lang->install->selectedModeTips = '後續您還可以去後臺-自定義-模式中進行調整';
$lang->install->selectedModeTips = '後續您還可以去後台-自定義-模式中進行調整';
$lang->install->groupList['ADMIN']['name'] = '管理員';
$lang->install->groupList['ADMIN']['desc'] = '系統管理員';
+3
View File
@@ -84,6 +84,7 @@ $lang->misc->feature = new stdclass();
$lang->misc->feature->lastest = 'Latest Version';
$lang->misc->feature->detailed = 'Detail';
$lang->misc->releaseDate['15.2'] = '2021-07-20';
$lang->misc->releaseDate['15.0.3'] = '2021-06-24';
$lang->misc->releaseDate['15.0.2'] = '2021-06-12';
$lang->misc->releaseDate['15.0.1'] = '2021-06-06';
@@ -145,6 +146,8 @@ $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['15.2'][] = array('title' => 'Optimize the new version upgrade process, add execution kanban.', 'desc' => '');
$lang->misc->feature->all['15.0.3'][] = array('title' => 'Fix Bug', 'desc' => '');
$lang->misc->feature->all['15.0.2'][] = array('title' => 'Fix Bug', 'desc' => '');
$lang->misc->feature->all['15.0.1'][] = array('title' => 'Fix bug', 'desc' => '');
+3
View File
@@ -84,6 +84,7 @@ $lang->misc->feature = new stdclass();
$lang->misc->feature->lastest = '最新版本';
$lang->misc->feature->detailed = '详情';
$lang->misc->releaseDate['15.2'] = '2021-07-20';
$lang->misc->releaseDate['15.0.3'] = '2021-06-24';
$lang->misc->releaseDate['15.0.2'] = '2021-06-12';
$lang->misc->releaseDate['15.0.1'] = '2021-06-06';
@@ -145,6 +146,8 @@ $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['15.2'][] = array('title' => '优化新版本升级流程,增加执行看板。', 'desc' => '');
$lang->misc->feature->all['15.0.3'][] = array('title' => '修复Bug', 'desc' => '');
$lang->misc->feature->all['15.0.2'][] = array('title' => '修复Bug', 'desc' => '');
$lang->misc->feature->all['15.0.1'][] = array('title' => '修复Bug', 'desc' => '');
+3
View File
@@ -84,6 +84,7 @@ $lang->misc->feature = new stdclass();
$lang->misc->feature->lastest = '最新版本';
$lang->misc->feature->detailed = '詳情';
$lang->misc->releaseDate['15.2'] = '2021-07-20';
$lang->misc->releaseDate['15.0.3'] = '2021-06-24';
$lang->misc->releaseDate['15.0.2'] = '2021-06-12';
$lang->misc->releaseDate['15.0.1'] = '2021-06-06';
@@ -145,6 +146,8 @@ $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['15.2'][] = array('title' => '優化新版本升級流程,增加執行看板。', 'desc' => '');
$lang->misc->feature->all['15.0.3'][] = array('title' => '修復Bug', 'desc' => '');
$lang->misc->feature->all['15.0.2'][] = array('title' => '修復Bug', 'desc' => '');
$lang->misc->feature->all['15.0.1'][] = array('title' => '修復Bug', 'desc' => '');
+7
View File
@@ -0,0 +1,7 @@
<?php
$lang->pipeline->id = 'ID';
$lang->pipeline->name = '名稱';
$lang->pipeline->url = '服務地址';
$lang->pipeline->token = 'Token';
$lang->pipeline->account = '用戶名';
$lang->pipeline->password = '密碼';
+3 -5
View File
@@ -164,15 +164,15 @@ $lang->project->featureBar['wait'] = '未開始';
$lang->project->featureBar['suspended'] = '已掛起';
$lang->project->featureBar['closed'] = '已關閉';
$lang->project->aclList['private'] = "私有 (只有項目團隊成員和干係人可訪問)";
$lang->project->aclList['private'] = "私有 (只有項目負責人、團隊成員和干係人可訪問)";
$lang->project->aclList['open'] = "公開 (有項目視圖權限即可訪問)";
$lang->project->acls['private'] = '私有';
$lang->project->acls['open'] = '公開';
$lang->project->subAclList['private'] = "私有 (只有本項目負責人、團隊成員和干係人可訪問)";
$lang->project->subAclList['private'] = "私有 (只有項目負責人、團隊成員和干係人可訪問)";
$lang->project->subAclList['open'] = "公開 (有項目視圖權限即可訪問)";
$lang->project->subAclList['program'] = '項目集內公開(所有上級項目集負責人和干係人、本項目負責人、團隊成員和干係人可訪問)';
$lang->project->subAclList['program'] = '項目集內公開(所有上級項目集負責人和干係人、項目負責人、團隊成員和干係人可訪問)';
$lang->project->authList['extend'] = '繼承 (取系統權限與項目權限的合集)';
$lang->project->authList['reset'] = '重新定義 (只取項目權限)';
@@ -189,8 +189,6 @@ $lang->project->endList[365] = '一年';
$lang->project->endList[999] = '長期';
$lang->project->empty = '暫時沒有項目';
$lang->project->accessDenied = '您無權訪問該項目!';
$lang->project->chooseProgramType = '選中項目管理模型';
$lang->project->nextStep = '下一步';
$lang->project->hoursUnit = '%s 工時';
$lang->project->membersUnit = '%s人';
+4 -3
View File
@@ -124,8 +124,8 @@ $lang->repo->encodingList['utf_8'] = 'UTF-8';
$lang->repo->encodingList['gbk'] = 'GBK';
$lang->repo->scmList['Git'] = 'Git';
$lang->repo->scmList['Subversion'] = 'SVN';
$lang->repo->scmList['Gitlab'] = 'Gitlab';
$lang->repo->scmList['Subversion'] = 'SVN';
$lang->repo->gitlabHost = 'Gitlab Host';
$lang->repo->gitlabToken = 'Gitlab Token';
@@ -174,8 +174,9 @@ $lang->repo->error->encoding = "The encoding might be wrong. Please change
$lang->repo->error->deleted = "Deletion of the repository failed. The current repository has a commit record associated with the design.";
$lang->repo->error->clientPath = "The client installation directory cannot have spaces!";
$lang->repo->syncTips = '<strong>You may find the reference about how to set Git sync from <a target="_blank" href="https://www.zentao.pm/book/zentaomanual/free-open-source-project-management-software-git-105.html">here</a>.</strong>';
$lang->repo->encodingsTips = "The encodings of comments can be comma separated values, e.g. utf-8.";
$lang->repo->syncTips = '<strong>You may find the reference about how to set Git sync from <a target="_blank" href="https://www.zentao.pm/book/zentaomanual/free-open-source-project-management-software-git-105.html">here</a>.</strong>';
$lang->repo->encodingsTips = "The encodings of comments can be comma separated values, e.g. utf-8.";
$lang->repo->pathTipsForGitlab = "GitLab Project URL";
$lang->repo->example = new stdclass();
$lang->repo->example->client = new stdclass();
+3 -3
View File
@@ -174,9 +174,9 @@ $lang->repo->error->encoding = "编码可能错误,请更换编码重试
$lang->repo->error->deleted = "删除版本库失败,当前版本库有提交记录与设计关联";
$lang->repo->error->clientPath = "客户端安装目录不能有空格!";
$lang->repo->syncTips = '请参照<a target="_blank" href="https://www.zentao.net/book/zentaopmshelp/207.html">这里</a>,设置版本库定时同步。';
$lang->repo->encodingsTips = "提交日志的编码,可以用逗号连接起来的多个,比如utf-8。";
$lang->repo->pathTipsForGitlab = "GitLab 项目URL";
$lang->repo->syncTips = '请参照<a target="_blank" href="https://www.zentao.net/book/zentaopmshelp/207.html">这里</a>,设置版本库定时同步。';
$lang->repo->encodingsTips = "提交日志的编码,可以用逗号连接起来的多个,比如utf-8。";
$lang->repo->pathTipsForGitlab = "GitLab 项目URL";
$lang->repo->example = new stdclass();
$lang->repo->example->client = new stdclass();
+9 -8
View File
@@ -123,16 +123,16 @@ $lang->repo->logStyles['D'] = '刪除';
$lang->repo->encodingList['utf_8'] = 'UTF-8';
$lang->repo->encodingList['gbk'] = 'GBK';
$lang->repo->scmList['Git'] = 'Git';
$lang->repo->scmList['Subversion'] = 'Subversion';
$lang->repo->scmList['Git'] = '本地 Git';
$lang->repo->scmList['Gitlab'] = 'Gitlab';
$lang->repo->scmList['Subversion'] = 'Subversion';
$lang->repo->gitlabHost = 'Gitlab 地址';
$lang->repo->gitlabToken = 'Gitlab Token';
$lang->repo->gitlabProject = '項目';
$lang->repo->gitlabHost = 'GitLab Server';
$lang->repo->gitlabToken = 'GitLab Token';
$lang->repo->gitlabProject = 'GitLab 項目';
$lang->repo->placeholder = new stdclass;
$lang->repo->placeholder->gitlabHost = '請填寫gitlab訪問地址';
$lang->repo->placeholder->gitlabHost = '請填寫GitLab訪問地址';
$lang->repo->notice = new stdclass();
$lang->repo->notice->syncing = '正在同步中, 請稍等...';
@@ -174,8 +174,9 @@ $lang->repo->error->encoding = "編碼可能錯誤,請更換編碼重試
$lang->repo->error->deleted = "刪除版本庫失敗,當前版本庫有提交記錄與設計關聯";
$lang->repo->error->clientPath = "客戶端安裝目錄不能有空格!";
$lang->repo->syncTips = '請參照<a target="_blank" href="https://www.zentao.net/book/zentaopmshelp/207.html">這裡</a>,設置版本庫定時同步。';
$lang->repo->encodingsTips = "提交日誌的編碼,可以用逗號連接起來的多個,比如utf-8。";
$lang->repo->syncTips = '請參照<a target="_blank" href="https://www.zentao.net/book/zentaopmshelp/207.html">這裡</a>,設置版本庫定時同步。';
$lang->repo->encodingsTips = "提交日誌的編碼,可以用逗號連接起來的多個,比如utf-8。";
$lang->repo->pathTipsForGitlab = "GitLab 項目URL";
$lang->repo->example = new stdclass();
$lang->repo->example->client = new stdclass();
+1
View File
@@ -274,6 +274,7 @@ $lang->story->cannotDeleteParent = "不能刪除父{$lang->SRCommon}";
$lang->story->moveChildrenTips = "修改父{$lang->SRCommon}的所屬產品會將其下的子{$lang->SRCommon}也移動到所選產品下。";
$lang->story->changeTips = '該軟件需求關聯的用戶需求有變更,點擊“不變更”忽略此條變更,點擊“變更”來進行該軟件需求的變更。';
$lang->story->estimateMustBeNumber = '估算值必須是數字';
$lang->story->estimateMustBePlus = '估算值不能是負數';
$lang->story->form = new stdclass();
$lang->story->form->area = "該{$lang->SRCommon}所屬範圍";
+1
View File
@@ -67,6 +67,7 @@ $lang->task->storyVersion = 'Story Version';
$lang->task->color = 'Color';
$lang->task->name = 'Name';
$lang->task->type = 'Type';
$lang->task->sync2Gitlab = 'Sync to Gitlab';
$lang->task->pri = 'Priority';
$lang->task->mailto = 'Mailto';
$lang->task->estimate = 'Estimates';
+1
View File
@@ -67,6 +67,7 @@ $lang->task->storyVersion = "{$lang->SRCommon}版本";
$lang->task->color = '標題顏色';
$lang->task->name = '任務名稱';
$lang->task->type = '任務類型';
$lang->task->sync2Gitlab = '同步到Gitlab';
$lang->task->pri = '優先順序';
$lang->task->mailto = '抄送給';
$lang->task->estimate = '最初預計';
+5 -1
View File
@@ -74,6 +74,10 @@ $lang->upgrade->to15Desc = <<<EOD
<br/>
<p><strong>How do you like to use ZenTao?</strong></p>
EOD;
$lang->upgrade->mergeProgramDesc = <<<EOD
<p>Next, ZenTao will migrate the existing data of {$lang->productCommon} and {$lang->projectCommon} to Program and Project. It will be one of the followings:</p><br />
<h4>1. Manage {$lang->productCommon} and {$lang->projectCommon} by {$lang->productCommon} Line </h4>
@@ -126,9 +130,9 @@ $lang->upgrade->createProjectTip = <<<EOT
<p>After the upgrade, the existing {$lang->projectCommon} will be Project in the new version.</p>
<p>ZenTao will create an item in Execute with the same name of {$lang->projectCommon} according to the data in {$lang->projectCommon}, and move the tasks, stories, and bugs in {$lang->projectCommon} to it.</p>
EOT;
$lang->upgrade->createExecutionTip = <<<EOT
<p>ZenTao will upgrade existing {$lang->projectCommon} as execution.</p>
<p>After the upgrade, the data of existing {$lang->projectCommon} will be in a Project - Execute of the new version .</p>
EOT;
include dirname(__FILE__) . '/version.php';
+58 -31
View File
@@ -58,28 +58,36 @@ $lang->upgrade->toPRO10Guide = '禪道專業版10版本升級';
$lang->upgrade->toBIZ5Guide = '禪道企業版5版本升級';
$lang->upgrade->toMAXGuide = '禪道旗艦版版本升級';
$lang->upgrade->to15Desc = <<<EOD
<p>尊敬的用戶,禪道從15版本開始對導航和概念做了調整,主要改動如下:</p>
<ol>
<p><li>增加了項目集概念。一個項目集可以包括多個產品和多個項目。</li></p>
<p><li>細分了項目和迭代概念,一個項目可以包含多個迭代。</li></p>
<p><li>導航增加了左側菜單並支持多頁面操作。</li></p>
</ol>
<p>尊敬的用戶,禪道從15版本開始系統功能做了重大升級,主要改動如下:</p>
<p><strong>一、增加了項目集概念</strong></p>
<p>項目集是一組相互關聯,且被協調管理的項目集合,處于最高層級,屬於戰略層面的概念。它可以進行多層級管理,幫助管理者站在宏觀的視角去制定戰略方向和分配資源。</p>
<p><strong>二、明確了產品和項目概念</strong></p>
<p>產品是定義做什麼,主要管理需求;項目是定義如何做,主要是在規定的時間、預算和質量目標範圍內完成項目的各種工作,可以通過敏捷迭代的方式,也可以通過瀑布階段的方式,屬於戰役層面的管理。</p>
<p><strong>三、增加了項目模型概念</strong></p>
<p>新版本在敏捷管理模型的基礎上增加了瀑布管理模型(旗艦版提供),後續還會支持看板管理模型,幫助項目團隊按需選擇適合的項目管理方式。</p>
<p><strong>四、增加了執行概念</strong></p>
<p>新版本中,根據選擇管理模型的不同,一個項目可以包含多個迭代/衝刺或階段,我們把多個迭代/衝刺或階段統稱為執行,通過執行去完成項目的任務,交付最終的結果。</p>
<p><strong>五、調整了導航結構</strong></p>
<p>將一級導航調整到了界面左側,同時增加了多應用切換的全新交互體驗。</p>
<br/>
<p>您可以在綫體驗最新版本的功能,以決定是否啟用新的模式:<a class='text-info' href='http://zentaomax.demo.zentao.net' target='_blank'>最新版演示demo</a></p>
<p>您還可以下載新版本功能介紹PPT:<a class='text-info' href='https://dl.cnezsoft.com/zentao/zentaoconcept.pdf' target='_blank'>最新版功能介紹PPT</a></p>
<video src="https://dl.cnezsoft.com/vedio/program0716.mp4" width="100%" controls ="controls"></video>
<p style="text-align:center"><small>禪道15.0版本介紹</small></p>
<br/>
<p>您可以在綫體驗最新版本的功能,以決定是否啟用的模式:<a class='text-info' href='http://zentaomax.demo.zentao.net' target='_blank'>演示demo</a></p>
</br>
<p><strong>請問您計劃如何使用禪道的新版本呢?</strong></p>
EOD;
$lang->upgrade->mergeProgramDesc = <<<EOD
<p>接下來我們會把之前歷史產品和迭代數據遷移到項目集和項目下,遷移的方案如下:</p><br />
<h4>方案一:以產品綫組織的產品和迭代 </h4>
<p>可以將整個產品綫及其下面的產品和迭代遷移到一個項目集和項目中,當然您也可以根據需要分開遷移。</p>
<h4>方案二:以產品組織的迭代 </h4>
<p>可以選擇多個產品及其下面的迭代遷移到一個項目集和項目中,也可以選擇某一個產品和產品下面的迭代遷移到項目集和項目中。</p>
<h4>方案三:獨立的迭代</h4>
<p>可以選擇若干個迭代遷移到一個項目集中,也可以獨立遷移。</p>
<h4>方案四:關聯多個產品的迭代</h4>
<p>可以選擇這些迭代歸屬於某個新項目下。</p>
<p>接下來我們會把之前歷史{$lang->productCommon}和{$lang->projectCommon}數據遷移到項目集和項目下,遷移的情況如下:</p><br />
<h4>情況一:以{$lang->productCommon}綫組織的{$lang->productCommon}和{$lang->projectCommon} </h4>
<p>可以將整個{$lang->productCommon}綫及其下面的{$lang->productCommon}和{$lang->projectCommon}遷移到一個項目集中,當然您也可以根據需要分開遷移。</p>
<h4>情況二:以{$lang->productCommon}組織的{$lang->projectCommon} </h4>
<p>可以選擇多個{$lang->productCommon}及其下面的{$lang->projectCommon}遷移到一個項目集中,也可以選擇某一個{$lang->productCommon}和{$lang->productCommon}下面的{$lang->projectCommon}遷移到項目集中。</p>
<h4>情況三:獨立的{$lang->projectCommon}</h4>
<p>可以選擇若干個{$lang->projectCommon}遷移到一個項目集中,也可以獨立遷移。</p>
<h4>情況四:關聯多個{$lang->productCommon}的{$lang->projectCommon}</h4>
<p>可以選擇這些{$lang->projectCommon}歸屬於某個新項目下。</p>
EOD;
$lang->upgrade->to15Mode['classic'] = '保持老版本的習慣';
@@ -88,24 +96,43 @@ $lang->upgrade->to15Mode['new'] = '全新項目集管理模式';
$lang->upgrade->selectedModeTips['classic'] = '後續您還可以在後台-自定義裡面切換為全新項目集管理的模式。';
$lang->upgrade->selectedModeTips['new'] = '切換為項目集管理模式需要對之前的數據進行歸併處理,系統會引導您完成這個操作。';
$lang->upgrade->line = '產品綫';
$lang->upgrade->program = '目標項目集和項目';
$lang->upgrade->existProgram = '已有項目集';
$lang->upgrade->existProject = '已有項目';
$lang->upgrade->existLine = '已有' . $lang->productCommon . '綫';
$lang->upgrade->product = $lang->productCommon;
$lang->upgrade->project = '迭代';
$lang->upgrade->repo = '版本庫';
$lang->upgrade->mergeRepo = '歸併版本庫';
$lang->upgrade->line = '產品綫';
$lang->upgrade->allLines = "所有{$lang->productCommon}綫";
$lang->upgrade->program = '目標項目集和項目';
$lang->upgrade->existProgram = '已有項目集';
$lang->upgrade->existProject = '已有項目';
$lang->upgrade->existLine = '已有' . $lang->productCommon . '綫';
$lang->upgrade->product = $lang->productCommon;
$lang->upgrade->project = '迭代';
$lang->upgrade->repo = '版本庫';
$lang->upgrade->mergeRepo = '歸併版本庫';
$lang->upgrade->setProgram = '設置項目所屬項目集';
$lang->upgrade->dataMethod = '數據遷移方式';
$lang->upgrade->begin = '開始日期';
$lang->upgrade->end = '結束日期';
$lang->upgrade->selectProject = '目標項目';
$lang->upgrade->projectName = '項目名稱';
$lang->upgrade->newProgram = '新建';
$lang->upgrade->projectEmpty = '所屬項目不能為空!';
$lang->upgrade->mergeSummary = "尊敬的用戶,您的系統中共有%s個產品,%s個迭代等待遷移。";
$lang->upgrade->mergeByProductLine = "以產品綫組織的產品和迭代:將整個產品綫及其下面的產品和迭代歸併到一個項目集和項目中,也可以分開歸併。";
$lang->upgrade->mergeByProduct = "以產品組織的迭代:可以選擇多個產品及其下面的迭代歸併到一個項目集和項目中,也可以選擇某一個產品將其下面所屬的迭代歸併到項目集和項目中。";
$lang->upgrade->mergeByProject = "獨立的迭代:可以選擇若干迭代歸併到一個項目中,也可以獨立歸併。";
$lang->upgrade->mergeByMoreLink = "關聯多個產品的迭代:選擇這個迭代歸屬於哪一個產品。";
$lang->upgrade->mergeSummary = "尊敬的用戶,您的系統中共有%s個{$lang->productCommon},%s個{$lang->projectCommon}等待遷移。";
$lang->upgrade->mergeByProductLine = "以{$lang->productCommon}綫組織的{$lang->productCommon}和{$lang->projectCommon}:將整個{$lang->productCommon}綫及其下面的{$lang->productCommon}和{$lang->projectCommon}歸併到一個項目集和項目中,也可以分開歸併。";
$lang->upgrade->mergeByProduct = "以{$lang->productCommon}組織的{$lang->projectCommon}:可以選擇多個{$lang->productCommon}及其下面的{$lang->projectCommon}歸併到一個項目集和項目中,也可以選擇某一個{$lang->productCommon}將其下面所屬的{$lang->projectCommon}歸併到項目集和項目中。";
$lang->upgrade->mergeByProject = "獨立的{$lang->projectCommon}:可以選擇若干{$lang->projectCommon}歸併到一個項目中,也可以獨立歸併。";
$lang->upgrade->mergeByMoreLink = "關聯多個{$lang->productCommon}的{$lang->projectCommon}:選擇這個{$lang->projectCommon}歸屬於哪一個項目。";
$lang->upgrade->mergeRepoTips = "將選中的版本庫歸併到所選產品下。";
$lang->upgrade->needBuild4Add = '本次升級需要創建索引。請到 [後台->系統->重建索引] 頁面,重新創建索引。';
$lang->upgrade->projectType['project'] = "把歷史的{$lang->projectCommon}作為項目升級";
$lang->upgrade->projectType['execution'] = "把歷史的{$lang->projectCommon}作為執行升級";
$lang->upgrade->createProjectTip = <<<EOT
<p>升級後歷史的{$lang->projectCommon}一一對應新版本中的項目。</p>
<p>系統會根據歷史{$lang->projectCommon}分別創建一個與該{$lang->projectCommon}同名的執行,並將之前{$lang->projectCommon}的任務、需求、Bug等數據遷移至執行中。</p>
EOT;
$lang->upgrade->createExecutionTip = <<<EOT
<p>系統會把歷史的{$lang->projectCommon}作為執行進行升級。</p>
<p>升級後歷史的{$lang->projectCommon}數據將對應新版本中項目下的執行。</p>
EOT;
include dirname(__FILE__) . '/version.php';
+18 -2
View File
@@ -122,8 +122,8 @@ $lang->user->testTask2Him = '%s負責的';
$lang->user->case2Him = '指派給%s';
$lang->user->caseByHim = '由%s創建';
$lang->user->errorDeny = "抱歉,您無權訪問『<b>%s</b>』模組的『<b>%s</b>』功能。請聯繫管理員獲取權限。點擊後退返回上頁。";
$lang->user->errorView = "抱歉,您無權訪問『<b>%s</b>』視圖。請聯繫管理員獲取權限。點擊後退返回上頁。";
$lang->user->errorDeny = "抱歉,您無權訪問『<b>%s</b>』模組的『<b>%s</b>』功能。請聯繫管理員獲取權限。請回到地盤或重新登錄。";
$lang->user->errorView = "抱歉,您無權訪問『<b>%s</b>』視圖。請聯繫管理員獲取權限。請回到地盤或重新登錄。";
$lang->user->loginFailed = "登錄失敗,請檢查您的用戶名或密碼是否填寫正確。";
$lang->user->lockWarning = "您還有%s次嘗試機會。";
$lang->user->loginLocked = "密碼嘗試次數太多,請聯繫管理員解鎖,或%s分鐘後重試。";
@@ -247,3 +247,19 @@ $lang->user->noticeResetFile = "<h5>普通用戶請聯繫管理員重置密碼</
$lang->user->notice4Safe = "警告:檢測到一鍵安裝包密碼口令弱";
$lang->user->process4DIR = "檢測到您可能在使用一鍵安裝包環境,該環境中其他站點還在用簡單密碼,安全起見,如果不使用其他站點,請及時處理。將 %s 目錄刪除或改名。詳情查看:<a href='https://www.zentao.net/book/zentaopmshelp/467.html' target='_blank'>https://www.zentao.net/book/zentaopmshelp/467.html</a>";
$lang->user->process4DB = "檢測到您可能在使用一鍵安裝包環境,該環境中其他站點還在用簡單密碼,安全起見,如果不使用其他站點,請及時處理。請登錄資料庫,修改 %s 資料庫的zt_user表的password欄位。詳情查看:<a href='https://www.zentao.net/book/zentaopmshelp/467.html' target='_blank'>https://www.zentao.net/book/zentaopmshelp/467.html</a>";
$lang->user->mkdirWin = <<<EOT
<html><head><meta charset='utf-8'></head>
<body><table align='center' style='width:700px; margin-top:100px; border:1px solid gray; font-size:14px;'><tr><td style='padding:8px'>
<div style='margin-bottom:8px;'>不能創建臨時目錄,請確認目錄<strong style='color:#ed980f'>%s</strong>是否存在並有操作權限。</div>
<div>Can't create tmp directory, make sure the directory <strong style='color:#ed980f'>%s</strong> exists and has permission to operate.</div>
</td></tr></table></body></html>
EOT;
$lang->user->mkdirLinux = <<<EOT
<html><head><meta charset='utf-8'></head>
<body><table align='center' style='width:700px; margin-top:100px; border:1px solid gray; font-size:14px;'><tr><td style='padding:8px'>
<div style='margin-bottom:8px;'>不能創建臨時目錄,請確認目錄<strong style='color:#ed980f'>%s</strong>是否存在並有操作權限。</div>
<div style='margin-bottom:8px;'>命令為:<strong style='color:#ed980f'>chmod o=rwx -R %s</strong>。</div>
<div>Can't create tmp directory, make sure the directory <strong style='color:#ed980f'>%s</strong> exists and has permission to operate.</div>
<div style='margin-bottom:8px;'>Commond: <strong style='color:#ed980f'>chmod o=rwx -R %s</strong>.</div>
</td></tr></table></body></html>
EOT;