Merge branch 'master' of github.com:easysoft/zentaopms

This commit is contained in:
wangyidong
2018-04-26 17:18:17 +08:00
22 changed files with 274 additions and 239 deletions
+26 -12
View File
@@ -83,21 +83,33 @@ $lang->block->default['product']['4']['params']['num'] = 15;
$lang->block->default['product']['4']['params']['orderBy'] = 'id_desc';
$lang->block->default['product']['4']['params']['type'] = 'assignedTo';
$lang->block->default['project']['1']['title'] = '進行中的' . $lang->projectCommon;
$lang->block->default['project']['1']['block'] = 'list';
$lang->block->default['project']['1']['title'] = $lang->projectCommon . '統計';
$lang->block->default['project']['1']['block'] = 'statistic';
$lang->block->default['project']['1']['grid'] = 8;
$lang->block->default['project']['1']['params']['num'] = 15;
$lang->block->default['project']['1']['params']['orderBy'] = 'id_desc';
$lang->block->default['project']['1']['params']['type'] = 'undone';
$lang->block->default['project']['1']['params']['type'] = 'noclosed';
$lang->block->default['project']['1']['params']['num'] = 5;
$lang->block->default['project']['2']['title'] = '指派給我的任務';
$lang->block->default['project']['2']['block'] = 'task';
$lang->block->default['project']['2']['title'] = $lang->projectCommon . '總覽';
$lang->block->default['project']['2']['block'] = 'overview';
$lang->block->default['project']['2']['grid'] = 4;
$lang->block->default['project']['2']['params']['num'] = 15;
$lang->block->default['project']['2']['params']['orderBy'] = 'id_desc';
$lang->block->default['project']['2']['params']['type'] = 'assignedTo';
$lang->block->default['project']['3']['title'] = '進行中的' . $lang->projectCommon;
$lang->block->default['project']['3']['block'] = 'list';
$lang->block->default['project']['3']['grid'] = 8;
$lang->block->default['project']['3']['params']['num'] = 15;
$lang->block->default['project']['3']['params']['orderBy'] = 'id_desc';
$lang->block->default['project']['3']['params']['type'] = 'undone';
$lang->block->default['project']['4']['title'] = '指派給我的任務';
$lang->block->default['project']['4']['block'] = 'task';
$lang->block->default['project']['4']['grid'] = 4;
$lang->block->default['project']['4']['params']['num'] = 15;
$lang->block->default['project']['4']['params']['orderBy'] = 'id_desc';
$lang->block->default['project']['4']['params']['type'] = 'assignedTo';
$lang->block->default['qa']['1']['title'] = '指派給我的Bug';
$lang->block->default['qa']['1']['block'] = 'bug';
@@ -232,9 +244,11 @@ $lang->block->modules['product']->availableBlocks->plan = '計劃列表';
$lang->block->modules['product']->availableBlocks->release = '發佈列表';
$lang->block->modules['project'] = new stdclass();
$lang->block->modules['project']->availableBlocks = new stdclass();
$lang->block->modules['project']->availableBlocks->list = $lang->projectCommon . '列表';
$lang->block->modules['project']->availableBlocks->task = '任務列表';
$lang->block->modules['project']->availableBlocks->build = '版本列表';
$lang->block->modules['project']->availableBlocks->statistic = $lang->projectCommon . '統計';
$lang->block->modules['project']->availableBlocks->overview = $lang->projectCommon . '總覽';
$lang->block->modules['project']->availableBlocks->list = $lang->projectCommon . '列表';
$lang->block->modules['project']->availableBlocks->task = '任務列表';
$lang->block->modules['project']->availableBlocks->build = '版本列表';
$lang->block->modules['qa'] = new stdclass();
$lang->block->modules['qa']->availableBlocks = new stdclass();
$lang->block->modules['qa']->availableBlocks->bug = 'Bug列表';
+9 -14
View File
@@ -100,6 +100,7 @@ $lang->bug->setPublic = 'Set as Public Template';
$lang->bug->deleteTemplate = 'Delete Template';
$lang->bug->confirmStoryChange = 'Confirm Story Change';
$lang->bug->copy = 'Copy';
$lang->bug->search = 'Search';
/* 查询条件列表。*/
$lang->bug->assignToMe = 'AssignedToMe';
@@ -128,13 +129,13 @@ $lang->bug->ditto = 'Ditto';
$lang->bug->dittoNotice = 'This bug is not linked to the same product as the last one!';
/* 页面标签。*/
$lang->bug->lblAssignedTo = 'Assignee';
$lang->bug->lblMailto = 'Mail To';
$lang->bug->lblLastEdited = 'Last Edited';
$lang->bug->lblResolved = 'Resolved By';
$lang->bug->allUsers = 'All User';
$lang->bug->allBuilds = 'All';
$lang->bug->createBuild = 'New';
$lang->bug->lblAssignedTo = 'Assignee';
$lang->bug->lblMailto = 'Mail To';
$lang->bug->lblLastEdited = 'Last Edited';
$lang->bug->lblResolved = 'Resolved By';
$lang->bug->allUsers = 'All User';
$lang->bug->allBuilds = 'All';
$lang->bug->createBuild = 'New';
/* legend列表。*/
$lang->bug->legendBasicInfo = 'Basic Info';
@@ -149,7 +150,7 @@ $lang->bug->legendMisc = 'Misc';
$lang->bug->legendRelated = 'Related Info';
/* 功能按钮。*/
$lang->bug->buttonConfirm = 'Confirm';
$lang->bug->buttonConfirm = 'Confirm';
/* 交互提示。*/
$lang->bug->confirmChangeProduct = "Change {$lang->productCommon} will cause linked {$lang->projectCommon},Story and Task change. Do you want to do this?";
@@ -233,10 +234,6 @@ $lang->bug->typeList['standard'] = 'Standard';
$lang->bug->typeList['automation'] = 'Testing Script';
$lang->bug->typeList['others'] = 'Other';
$lang->bug->statusList[''] = '';
$lang->bug->statusList['active'] = 'Active';
$lang->bug->statusList['resolved'] = 'Resolved';
@@ -376,8 +373,6 @@ $lang->bug->mySelects['resolvedbyme'] = $lang->bug->resolvedByMeAB;
$lang->bug->featureBar['browse']['unclosed'] = $lang->bug->unclosed;
$lang->bug->featureBar['browse']['all'] = $lang->bug->allBugs;
$lang->bug->featureBar['browse']['my'] = $lang->bug->my;
$lang->bug->featureBar['browse']['unconfirmed'] = $lang->bug->unconfirmed;
$lang->bug->featureBar['browse']['assigntonull'] = $lang->bug->assignToNull;
+10 -13
View File
@@ -100,6 +100,7 @@ $lang->bug->setPublic = '设为公共模板';
$lang->bug->deleteTemplate = '删除模板';
$lang->bug->confirmStoryChange = '确认需求变动';
$lang->bug->copy = '复制Bug';
$lang->bug->search = '搜索';
/* 查询条件列表。*/
$lang->bug->assignToMe = '指派给我';
@@ -118,7 +119,7 @@ $lang->bug->allBugs = '所有';
$lang->bug->byQuery = '搜索';
$lang->bug->needConfirm = '需求变动';
$lang->bug->allProduct = '所有' . $lang->productCommon;
$lang->bug->my = '我的';
$lang->bug->assignToMeAB = '指派给我';
$lang->bug->openedByMeAB = '由我创建';
@@ -128,13 +129,13 @@ $lang->bug->ditto = '同上';
$lang->bug->dittoNotice = '该bug与上一bug不属于同一产品!';
/* 页面标签。*/
$lang->bug->lblAssignedTo = '当前指派';
$lang->bug->lblMailto = '抄送给';
$lang->bug->lblLastEdited = '最后修改';
$lang->bug->lblResolved = '由谁解决';
$lang->bug->allUsers = '所有用户';
$lang->bug->allBuilds = '所有';
$lang->bug->createBuild = '新建';
$lang->bug->lblAssignedTo = '当前指派';
$lang->bug->lblMailto = '抄送给';
$lang->bug->lblLastEdited = '最后修改';
$lang->bug->lblResolved = '由谁解决';
$lang->bug->allUsers = '所有用户';
$lang->bug->allBuilds = '所有';
$lang->bug->createBuild = '新建';
/* legend列表。*/
$lang->bug->legendBasicInfo = '基本信息';
@@ -149,7 +150,7 @@ $lang->bug->legendMisc = '其他相关';
$lang->bug->legendRelated = '其他信息';
/* 功能按钮。*/
$lang->bug->buttonConfirm = '确认';
$lang->bug->buttonConfirm = '确认';
/* 交互提示。*/
$lang->bug->confirmChangeProduct = "修改{$lang->productCommon}会导致相应的{$lang->projectCommon}、需求和任务发生变化,确定吗?";
@@ -369,10 +370,6 @@ $lang->bug->placeholder = new stdclass();
$lang->bug->placeholder->chooseBuilds = '选择相关版本...';
$lang->bug->placeholder->newBuildName = '新版本名称';
$lang->bug->featureBar['browse']['unclosed'] = $lang->bug->unclosed;
$lang->bug->featureBar['browse']['all'] = $lang->bug->allBugs;
$lang->bug->featureBar['browse']['assigntome'] = $lang->bug->assignToMe;
+10 -13
View File
@@ -100,6 +100,7 @@ $lang->bug->setPublic = '設為公共模板';
$lang->bug->deleteTemplate = '刪除模板';
$lang->bug->confirmStoryChange = '確認需求變動';
$lang->bug->copy = '複製Bug';
$lang->bug->search = '搜索';
/* 查詢條件列表。*/
$lang->bug->assignToMe = '指派給我';
@@ -118,7 +119,7 @@ $lang->bug->allBugs = '所有';
$lang->bug->byQuery = '搜索';
$lang->bug->needConfirm = '需求變動';
$lang->bug->allProduct = '所有' . $lang->productCommon;
$lang->bug->my = '我的';
$lang->bug->assignToMeAB = '指派給我';
$lang->bug->openedByMeAB = '由我創建';
@@ -128,13 +129,13 @@ $lang->bug->ditto = '同上';
$lang->bug->dittoNotice = '該bug與上一bug不屬於同一產品!';
/* 頁面標籤。*/
$lang->bug->lblAssignedTo = '當前指派';
$lang->bug->lblMailto = '抄送給';
$lang->bug->lblLastEdited = '最後修改';
$lang->bug->lblResolved = '由誰解決';
$lang->bug->allUsers = '所有用戶';
$lang->bug->allBuilds = '所有';
$lang->bug->createBuild = '新建';
$lang->bug->lblAssignedTo = '當前指派';
$lang->bug->lblMailto = '抄送給';
$lang->bug->lblLastEdited = '最後修改';
$lang->bug->lblResolved = '由誰解決';
$lang->bug->allUsers = '所有用戶';
$lang->bug->allBuilds = '所有';
$lang->bug->createBuild = '新建';
/* legend列表。*/
$lang->bug->legendBasicInfo = '基本信息';
@@ -149,7 +150,7 @@ $lang->bug->legendMisc = '其他相關';
$lang->bug->legendRelated = '其他信息';
/* 功能按鈕。*/
$lang->bug->buttonConfirm = '確認';
$lang->bug->buttonConfirm = '確認';
/* 交互提示。*/
$lang->bug->confirmChangeProduct = "修改{$lang->productCommon}會導致相應的{$lang->projectCommon}、需求和任務發生變化,確定嗎?";
@@ -369,10 +370,6 @@ $lang->bug->placeholder = new stdclass();
$lang->bug->placeholder->chooseBuilds = '選擇相關版本...';
$lang->bug->placeholder->newBuildName = '新版本名稱';
$lang->bug->featureBar['browse']['unclosed'] = $lang->bug->unclosed;
$lang->bug->featureBar['browse']['all'] = $lang->bug->allBugs;
$lang->bug->featureBar['browse']['assigntome'] = $lang->bug->assignToMe;
+31 -30
View File
@@ -9,17 +9,17 @@
* @version $Id: zh-tw.php 4129 2013-01-18 01:58:14Z wwccss $
* @link http://www.zentao.net
*/
$lang->build->common = "版本";
$lang->build->create = "創建版本";
$lang->build->edit = "編輯版本";
$lang->build->linkStory = "關聯需求";
$lang->build->linkBug = "關聯Bug";
$lang->build->delete = "刪除版本";
$lang->build->deleted = "已刪除";
$lang->build->view = "版本詳情";
$lang->build->batchUnlink = '批量移除';
$lang->build->batchUnlinkStory = '批量移除需求';
$lang->build->batchUnlinkBug = '批量移除Bug';
$lang->build->common = "版本";
$lang->build->create = "創建版本";
$lang->build->edit = "編輯版本";
$lang->build->linkStory = "關聯需求";
$lang->build->linkBug = "關聯Bug";
$lang->build->delete = "刪除版本";
$lang->build->deleted = "已刪除";
$lang->build->view = "版本詳情";
$lang->build->batchUnlink = '批量移除';
$lang->build->batchUnlinkStory = '批量移除需求';
$lang->build->batchUnlinkBug = '批量移除Bug';
$lang->build->confirmDelete = "您確認刪除該版本嗎?";
$lang->build->confirmUnlinkStory = "您確認移除該需求嗎?";
@@ -27,25 +27,26 @@ $lang->build->confirmUnlinkBug = "您確認移除該Bug嗎?";
$lang->build->basicInfo = '基本信息';
$lang->build->id = 'ID';
$lang->build->product = $lang->productCommon;
$lang->build->branch = '平台/分支';
$lang->build->project = '所屬' . $lang->projectCommon;
$lang->build->name = '名稱編號';
$lang->build->date = '打包日期';
$lang->build->builder = '構建者';
$lang->build->scmPath = '原始碼地址';
$lang->build->filePath = '下載地址';
$lang->build->desc = '描述';
$lang->build->files = '上傳發行包';
$lang->build->last = '上個版本';
$lang->build->packageType = '包類型';
$lang->build->unlinkStory = '移除需求';
$lang->build->unlinkBug = '移除Bug';
$lang->build->stories = '完成的需求';
$lang->build->bugs = '解決的Bug';
$lang->build->generatedBugs = '產生的Bug';
$lang->build->noProduct = " <span style='color:red'>該{$lang->projectCommon}沒有關聯{$lang->productCommon},無法創建版本,請先<a href='%s'>關聯{$lang->productCommon}</a></span>";
$lang->build->id = 'ID';
$lang->build->product = $lang->productCommon;
$lang->build->branch = '平台/分支';
$lang->build->project = '所屬' . $lang->projectCommon;
$lang->build->name = '名稱編號';
$lang->build->date = '打包日期';
$lang->build->builder = '構建者';
$lang->build->scmPath = '原始碼地址';
$lang->build->filePath = '下載地址';
$lang->build->desc = '描述';
$lang->build->files = '上傳發行包';
$lang->build->last = '上個版本';
$lang->build->packageType = '包類型';
$lang->build->unlinkStory = '移除需求';
$lang->build->unlinkBug = '移除Bug';
$lang->build->stories = '完成的需求';
$lang->build->bugs = '解決的Bug';
$lang->build->generatedBugs = '產生的Bug';
$lang->build->noProduct = " <span style='color:red'>該{$lang->projectCommon}沒有關聯{$lang->productCommon},無法創建版本,請先<a href='%s'>關聯{$lang->productCommon}</a></span>";
$lang->build->noData = '暫無';
$lang->build->finishStories = ' 本次共完成 %s 個需求';
$lang->build->resolvedBugs = ' 本次共解決 %s 個Bug';
+7 -1
View File
@@ -297,7 +297,13 @@ tbody tr td:first-child input{display:none;}
<?php if($this->config->global->flow != 'onlyTest'):?>
<tr>
<th><?php echo $lang->build->desc;?></th>
<td><div class='article-content'><?php echo $build->desc;?></div></td>
<td>
<?php if($build->desc):?>
<div class='article-content'><?php echo $build->desc;?></div>
<?php else:?>
<?php echo $lang->build->noData;?>
<?php endif;?>
</td>
</tr>
<?php endif;?>
</table>
+30 -9
View File
@@ -111,7 +111,7 @@ $lang->common->common = '公有模組';
$lang->menu = new stdclass();
$lang->menu->my = '<span> 我的地盤</span>|my|index';
$lang->menu->product = $lang->productCommon . '|product|index|locate=no';
$lang->menu->project = $lang->projectCommon . '|project|index';
$lang->menu->project = $lang->projectCommon . '|project|index|locate=no';
$lang->menu->qa = '測試|qa|index';
$lang->menu->doc = '文檔|doc|index';
$lang->menu->report = '統計|report|index';
@@ -221,21 +221,42 @@ $lang->release->menu = $lang->product->menu;
$lang->project = new stdclass();
$lang->project->menu = new stdclass();
$lang->project->menu->task = array('link' => '任務|project|task|projectID=%s', 'subModule' => 'task,tree', 'alias' => 'grouptask,importtask,burn,importbug,kanban,printkanban,tree');
$lang->project->menu->list = array('link' => '%s', 'subModule' => 'task,tree', 'alias' => 'grouptask,importtask,importbug,tree');
$lang->project->menu->kanban = array('link' => '看板|project|kanban|projectID=%s');
$lang->project->menu->burn = array('link' => '燃盡圖|project|burn|projectID=%s');
$lang->project->menu->story = array('link' => '需求|project|story|projectID=%s', 'subModule' => 'story', 'alias' => 'linkstory,storykanban');
$lang->project->menu->bug = 'Bug|project|bug|projectID=%s';
$lang->project->menu->dynamic = '動態|project|dynamic|projectID=%s';
$lang->project->menu->build = array('link' => '版本|project|build|projectID=%s', 'subModule' => 'build');
$lang->project->menu->testtask = array('link' => '測試單|project|testtask|projectID=%s');
$lang->project->menu->team = array('link' => '團隊|project|team|projectID=%s', 'alias' => 'managemembers');
$lang->project->menu->qa = array('link' => '%s', 'subModule' => 'build');
$lang->project->menu->doc = array('link' => '文檔|doc|objectLibs|type=project&objectID=%s&from=project', 'subModule' => 'doc');
$lang->project->menu->action = array('link' => '%s');
$lang->project->menu->product = $lang->productCommon . '|project|manageproducts|projectID=%s';
$lang->project->menu->team = array('link' => '團隊|project|team|projectID=%s', 'alias' => 'managemembers');
$lang->project->menu->view = array('link' => '概況|project|view|projectID=%s', 'alias' => 'edit,start,suspend,putoff,close');
$lang->project->subMenu = new stdclass();
$lang->project->subMenu->list = new stdclass();
$lang->project->subMenu->list->task = '任務列表|project|task|projectID=%s';
$lang->project->subMenu->list->tree = '樹狀圖|project|tree|projectID=%s';
$lang->project->subMenu->list->groupTask = '分組視圖|project|groupTask|projectID=%s';
$lang->project->subMenu->qa = new stdclass();
$lang->project->subMenu->qa->bug = 'Bug|project|bug|projectID=%s';
$lang->project->subMenu->qa->build = '版本|project|build|projectID=%s';
$lang->project->subMenu->qa->testtask = '測試單|project|testtask|projectID=%s';
$lang->project->subMenu->action = new stdclass();
$lang->project->subMenu->action->dynamic = '動態|project|dynamic|projectID=%s';
$lang->project->dividerMenu = ',story,doc,';
$lang->task = new stdclass();
$lang->build = new stdclass();
$lang->task->menu = $lang->project->menu;
$lang->build->menu = $lang->project->menu;
$lang->task->menu = $lang->project->menu;
$lang->task->subMenu = $lang->project->subMenu;
$lang->build->menu = $lang->project->menu;
$lang->build->subMenu = $lang->project->subMenu;
$lang->task->dividerMenu = $lang->project->dividerMenu;
$lang->build->dividerMenu = $lang->project->dividerMenu;
/* QA視圖菜單設置。*/
$lang->qa = new stdclass();
+2 -2
View File
@@ -106,8 +106,8 @@ $lang->extension->errorPackageFileExists = '下載路徑已經有一個名
$lang->extension->errorDownloadFailed = '下載失敗,請重新下載。如果多次重試還不行,請嘗試手工下載,然後通過上傳功能上傳。';
$lang->extension->errorMd5Checking = '下載檔案不完整,請重新下載。如果多次重試還不行,請嘗試手工下載,然後通過上傳功能上傳。';
$lang->extension->errorExtracted = '包檔案<strong> %s </strong>解壓縮失敗,可能不是一個有效的zip檔案。錯誤信息如下:<br />%s';
$lang->extension->errorCheckIncompatible = '該插件與禪道版本不兼容,%s後可能無法使用。<h3>您可以選擇 <a href="%s">強制%s</a> 或者 <a href="#" onclick=parent.location.href="%s">取消</a></h3>';
$lang->extension->errorFileConflicted = '有以下檔案衝突:<br />%s <h3>您可以選擇 <a href="%s">覆蓋</a> 或者 <a href="#" onclick=parent.location.href="%s">取消</a></h3>';
$lang->extension->errorCheckIncompatible = '該插件與禪道版本不兼容,%s後可能無法使用。<h5>您可以選擇 <a href="%s" class="btn btn-sm">強制%s</a> 或者 <a href="#" onclick=parent.location.href="%s" class="btn btn-sm">取消</a></h5>';
$lang->extension->errorFileConflicted = '有以下檔案衝突:<br />%s <h5>您可以選擇 <a href="%s" class="btn btn-sm">覆蓋</a> 或者 <a href="#" onclick=parent.location.href="%s" class="btn btn-sm">取消</a></h5>';
$lang->extension->errorPackageNotFound = '包檔案 <strong>%s </strong>沒有找到,可能是因為自動下載失敗。您可以嘗試再次下載。';
$lang->extension->errorTargetPathNotWritable = '目標路徑 <strong>%s </strong>不可寫。';
$lang->extension->errorTargetPathNotExists = '目標路徑 <strong>%s </strong>不存在。';
+2 -1
View File
@@ -75,6 +75,7 @@ $lang->product->release = '發佈';
$lang->product->latestDynamic = '最新動態';
$lang->product->iteration = '版本迭代';
$lang->product->iterationInfo = '迭代 %s 次';
$lang->product->iterationView = '查看詳情';
$lang->product->searchStory = '搜索';
$lang->product->assignedToMe = '指給我';
@@ -116,7 +117,7 @@ $lang->product->aclList['custom'] = '自定義白名單(團隊成員和白名
$lang->product->storySummary = "本頁共 <strong>%s</strong> 個需求,預計 <strong>%s</strong> 個工時,用例覆蓋率<strong>%s</strong>。";
$lang->product->checkedSummary = "選中 <strong>%total%</strong> 個需求,預計 <strong>%estimate%</strong> 個工時,用例覆蓋率<strong>%rate%</strong>。";
$lang->product->noModule = '您現在還沒有模組信息<br/>請維護產品模組';
$lang->product->noModule = '<div>您現在還沒有模組信息</div><div>請維護產品模組</div>';
$lang->product->noProduct = '暫時沒有產品,您現在可以';
$lang->product->noStory = '暫時沒有需求,您現在可以';
$lang->product->noMatched = '找不到包含"%s"的' . $lang->productCommon;
+1 -1
View File
@@ -17,7 +17,7 @@ $lang->productplan->edit = "編輯計劃";
$lang->productplan->delete = "刪除計劃";
$lang->productplan->view = "計劃詳情";
$lang->productplan->bugSummary = "本頁共 <strong>%s</strong> 個Bug";
$lang->productplan->info = '信息';
$lang->productplan->basicInfo = '基本信息';
$lang->productplan->batchEdit = '批量編輯';
$lang->productplan->batchUnlink = "批量移除";
+1 -1
View File
@@ -104,7 +104,7 @@
<?php if(common::hasPriv('productplan', 'batchEdit')):?>
<div class="checkbox-primary check-all"><label><?php echo $lang->selectAll?></label></div>
<div class="table-actions btn-toolbar">
<?php echo html::submitButton($lang->edit);?>
<?php echo html::submitButton($lang->edit, '', 'btn');?>
</div>
<?php endif;?>
<?php $pager->show('right', 'pagerjs');?>
+1 -1
View File
@@ -94,7 +94,7 @@ class project extends control
$actions = $this->loadModel('action')->getList('project', $projectID);
/* Set menu. */
$this->project->setMenu($this->projects, $projectID, $extra);
$this->project->setMenu($this->projects, $projectID, $buildID = 0, $extra);
/* Assign. */
$this->view->projects = $this->projects;
-4
View File
@@ -1,4 +0,0 @@
$(document).ready(function()
{
ajaxGetSearchForm();
});
+2
View File
@@ -147,6 +147,7 @@ $lang->project->storySort = '需求排序';
$lang->project->importPlanStory = '創建' . $lang->projectCommon . '成功!\n是否導入計劃關聯的相關需求?';
$lang->project->iteration = '版本迭代';
$lang->project->iterationInfo = '迭代%s次';
$lang->project->viewAll = '查看所有';
/* 分組瀏覽。*/
$lang->project->allTasks = '所有';
@@ -213,6 +214,7 @@ $lang->project->copyFromProject = "複製自{$lang->projectCommon} <strong>%s</s
$lang->project->cancelCopy = '取消複製';
$lang->project->byPeriod = '按時間段';
$lang->project->byUser = '按用戶';
$lang->project->noProject = '暫時沒有項目,您現在可以';
/* 交互提示。*/
$lang->project->confirmDelete = "您確定刪除{$lang->projectCommon}[%s]嗎?";
+34 -28
View File
@@ -15,78 +15,83 @@
<div class="btn-toolbar pull-left">
<span class='btn btn-link btn-active-text'>
<span class='text'><?php echo html::icon($lang->icons['bug']);?> <?php echo $lang->project->bug;?></span>
<?php if($build) echo ' <span class="label label-danger">Build:' . $build->name . '</span>'; ?>
<span class="label label-light label-badge"><?php echo $pager->recTotal;?></span>
<?php if($build) echo ' <span class="label label-danger">Build:' . $build->name . '</span>';?>
</span>
<a class="btn btn-link querybox-toggle" id="bysearchTab"><i class="icon icon-search muted"></i> <?php echo $lang->bug->search;?></a>
</div>
<div class="btn-toolbar pull-right">
<?php common::printIcon('bug', 'export', "productID=$productID&orderBy=$orderBy", '', 'button', '', '', "export iframe");?>
<?php common::printIcon('bug', 'create', "productID=$productID&branch=$branchID&extra=projectID=$project->id");?>
<?php common::printLink('bug', 'export', "productID=$productID&orderBy=$orderBy", "<i class='icon icon-export'> </i>" . $lang->bug->export, '', "class='btn btn-link export iframe'");?>
<?php common::printLink('bug', 'create', "productID=$productID&branch=$branchID&extra=projectID=$project->id", "<i class='icon icon-plus'> </i>" . $lang->bug->create, '', "class='btn btn-primary'");?>
</div>
</div>
<div id="mainContent" class='main-content'>
<div id='queryBox' class='show'></div>
<div class="cell" id="queryBox"></div>
<form class='main-table' method='post' id='projectBugForm' data-ride="table">
<table class='table has-sort-head' id='bugList'>
<?php $canBatchAssignTo = common::hasPriv('bug', 'batchAssignTo');?>
<?php $vars = "projectID={$project->id}&orderBy=%s&build=$buildID&type=$type&param=$param&recTotal={$pager->recTotal}&recPerPage={$pager->recPerPage}"; ?>
<thead>
<tr>
<?php $vars = "projectID={$project->id}&orderBy=%s&build=$buildID&type=$type&param=$param&recTotal={$pager->recTotal}&recPerPage={$pager->recPerPage}"; ?>
<th class='c-id'>
<?php if($canBatchAssignTo):?>
<div class="checkbox-primary check-all" title="<?php echo $lang->selectAll?>">
<label></label>
</div>
<?php endif;?>
<?php common::printOrderLink('id', $orderBy, $vars, $lang->idAB);?>
</th>
<th class='w-80px'> <?php common::printOrderLink('severity', $orderBy, $vars, $lang->bug->severityAB);?></th>
<th class='w-pri'> <?php common::printOrderLink('pri', $orderBy, $vars, $lang->priAB);?></th>
<th class='c-pri'> <?php common::printOrderLink('pri', $orderBy, $vars, $lang->priAB);?></th>
<th> <?php common::printOrderLink('title', $orderBy, $vars, $lang->bug->title);?></th>
<th class='w-user'> <?php common::printOrderLink('openedBy', $orderBy, $vars, $lang->openedByAB);?></th>
<th class='w-user'> <?php common::printOrderLink('assignedTo', $orderBy, $vars, $lang->assignedToAB);?></th>
<th class='w-100px text-center'><?php common::printOrderLink('assignedTo', $orderBy, $vars, $lang->assignedToAB);?></th>
<th class='w-user'> <?php common::printOrderLink('resolvedBy', $orderBy, $vars, $lang->bug->resolvedBy);?></th>
<th class='w-resolution'><?php common::printOrderLink('resolution', $orderBy, $vars, $lang->bug->resolutionAB);?></th>
<th class='w-150px'><?php echo $lang->actions;?></th>
<th class='w-130px text-center'><?php echo $lang->actions;?></th>
</tr>
</thead>
<tbody>
<?php foreach($bugs as $bug):?>
<tr>
<td class='c-id'>
<div class="checkbox-primary">
<input type='checkbox' name='bugIDList[]' value='<?php echo $bug->id;?>'/>
<label></label>
<?php printf('%03d', $bug->id);?>
</div>
<td class='cell-id'>
<?php if($canBatchAssignTo):?>
<?php echo html::checkbox('bugIDList', array($bug->id => sprintf('%03d', $bug->id)));?>
<?php else:?>
<?php printf('%03d', $bug->id);?>
<?php endif;?>
</td>
<td><span class='<?php echo 'severity' . zget($lang->bug->severityList, $bug->severity, $bug->severity)?>'><?php echo zget($lang->bug->severityList, $bug->severity, $bug->severity)?></span></td>
<td><span class='label-pri <?php echo 'label-pri-' . $bug->pri?>'><?php echo zget($lang->bug->priList, $bug->pri, $bug->pri)?></span></td>
<td class='text-left' title="<?php echo $bug->title?>"><?php echo html::a($this->createLink('bug', 'view', "bugID=$bug->id"), $bug->title, null, "style='color: $bug->color'");?></td>
<td><?php echo zget($users, $bug->openedBy, $bug->openedBy);?></td>
<td><?php echo zget($users, $bug->assignedTo, $bug->assignedTo);?></td>
<td class='c-actions'>
<?php $params = "bugID=$bug->id";?>
<?php common::printIcon('bug', 'assignTo', $params, $bug, 'list', '', '', 'iframe', true);?>
<?php echo zget($users, $bug->assignedTo, $bug->assignedTo);?>
</td>
<td><?php echo zget($users, $bug->resolvedBy, $bug->resolvedBy);?></td>
<td><?php echo $lang->bug->resolutionList[$bug->resolution];?></td>
<td class='c-actions'>
<?php $params = "bugID=$bug->id";?>
<div class='more'>
<?php
common::printIcon('bug', 'confirmBug', $params, $bug, 'list', 'search', '', 'iframe', true);
common::printIcon('bug', 'create', "product=$bug->product&branch=$bug->branch&extra=bugID=$bug->id", $bug, 'list', 'copy');
?>
<?php if($bug->status == 'active') common::printIcon('bug', 'confirmBug', $params, $bug, 'list', 'search', '', 'iframe', true);?>
</div>
<?php
common::printIcon('bug', 'assignTo', $params, $bug, 'list', '', '', 'iframe', true);
common::printIcon('bug', 'resolve', $params, $bug, 'list', '', '', 'iframe', true);
common::printIcon('bug', 'close', $params, $bug, 'list', '', '', 'iframe', true);
common::printIcon('bug', 'edit', $params, $bug, 'list');
if($bug->status == 'active') common::printIcon('bug', 'resolve', $params, $bug, 'list', 'check', '', 'iframe', true);
if($bug->status != 'active') common::printIcon('bug', 'close', $params, $bug, 'list', '', '', 'iframe', true);
common::printIcon('bug', 'create', "product=$bug->product&branch=$bug->branch&extra=$params", $bug, 'list', 'copy');
common::printIcon('bug', 'edit', $params, $bug, 'list');
?>
</td>
</tr>
<?php endforeach;?>
</tbody>
</table>
<?php if(count($bugs)):?>
<?php if($bugs):?>
<div class='table-footer'>
<?php if($canBatchAssignTo):?>
<div class="checkbox-primary check-all"><label><?php echo $lang->selectAll?></label></div>
<div class="table-actions btn-toolbar">
<?php if(common::hasPriv('bug', 'batchAssignTo')):?>
<div class="btn-group dropup">
<button data-toggle="dropdown" type="button" class="btn"><?php echo $lang->bug->assignedTo?> <span class="caret"></span></button>
<?php
@@ -111,12 +116,13 @@
echo "</div>";
?>
</div>
<?php endif;?>
</div>
<?php endif;?>
<?php $pager->show('right', 'pagerjs');?>
</div>
<?php endif;?>
</form>
</div>
<?php js::set('replaceID', 'bugList')?>
<?php js::set('replaceID', 'bugList');?>
<?php js::set('browseType', $type);?>
<?php include '../../common/view/footer.html.php';?>
+2 -1
View File
@@ -11,7 +11,8 @@ function showLink(releaseID, type, param)
var formID = type == 'story' ? '#unlinkedStoriesForm' : (type == 'leftBug' ? '#unlinkedLeftBugsForm' : '#unlinkedBugsForm');
setTimeout(function(){fixedTfootAction(formID)}, 100);
checkTable($(formID).find('table'));
$('[data-ride="table"]').table();
});
}
$(function()
+30 -30
View File
@@ -9,15 +9,15 @@
* @version $Id: en.php 4129 2013-01-18 01:58:14Z wwccss $
* @link http://www.zentao.net
*/
$lang->release->common = 'Release';
$lang->release->create = "Create";
$lang->release->edit = "Edit";
$lang->release->linkStory = "Link Story";
$lang->release->linkBug = "Link Bug";
$lang->release->delete = "Delete";
$lang->release->deleted = 'Deleted';
$lang->release->view = "Overview";
$lang->release->browse = "Browse";
$lang->release->common = 'Release';
$lang->release->create = "Create";
$lang->release->edit = "Edit";
$lang->release->linkStory = "Link Story";
$lang->release->linkBug = "Link Bug";
$lang->release->delete = "Delete";
$lang->release->deleted = 'Deleted';
$lang->release->view = "Overview";
$lang->release->browse = "Browse";
$lang->release->changeStatus = "Change Status";
$lang->release->batchUnlink = "Batch Unlink";
$lang->release->batchUnlinkStory = "Batch Unlink Story";
@@ -29,27 +29,27 @@ $lang->release->confirmUnlinkBug = "Do you want to remove this Bug?";
$lang->release->basicInfo = 'Basic Info';
$lang->release->id = 'ID';
$lang->release->product = $lang->productCommon;
$lang->release->branch = 'Platform/Branch';
$lang->release->build = 'Build';
$lang->release->name = 'Name';
$lang->release->marker = 'Marker';
$lang->release->date = 'Date';
$lang->release->desc = 'Description';
$lang->release->status = 'Status';
$lang->release->last = 'Last Release';
$lang->release->unlinkStory = 'Unlink Story';
$lang->release->unlinkBug = 'Unlink Bug';
$lang->release->stories = 'Finished Story';
$lang->release->bugs = 'Solved Bug';
$lang->release->leftBugs = 'Remained Bug';
$lang->release->generatedBugs = 'Remained Bug';
$lang->release->finishStories = 'Finished %s Story';
$lang->release->resolvedBugs = 'Solved %s Bug';
$lang->release->createdBugs = 'Generated %s Bug';
$lang->release->export = 'Export as HTML';
$lang->release->yesterday = 'Released Yesterday';
$lang->release->id = 'ID';
$lang->release->product = $lang->productCommon;
$lang->release->branch = 'Platform/Branch';
$lang->release->build = 'Build';
$lang->release->name = 'Name';
$lang->release->marker = 'Marker';
$lang->release->date = 'Date';
$lang->release->desc = 'Description';
$lang->release->status = 'Status';
$lang->release->last = 'Last Release';
$lang->release->unlinkStory = 'Unlink Story';
$lang->release->unlinkBug = 'Unlink Bug';
$lang->release->stories = 'Finished Story';
$lang->release->bugs = 'Solved Bug';
$lang->release->leftBugs = 'Remained Bug';
$lang->release->generatedBugs = 'Remained Bug';
$lang->release->finishStories = 'Finished %s Story';
$lang->release->resolvedBugs = 'Solved %s Bug';
$lang->release->createdBugs = 'Generated %s Bug';
$lang->release->export = 'Export as HTML';
$lang->release->yesterday = 'Released Yesterday';
$lang->release->filePath = 'Download : ';
$lang->release->scmPath = 'SCM Path : ';
+30 -30
View File
@@ -9,15 +9,15 @@
* @version $Id: zh-cn.php 4129 2013-01-18 01:58:14Z wwccss $
* @link http://www.zentao.net
*/
$lang->release->common = '发布';
$lang->release->create = "创建发布";
$lang->release->edit = "编辑发布";
$lang->release->linkStory = "关联需求";
$lang->release->linkBug = "关联Bug";
$lang->release->delete = "删除发布";
$lang->release->deleted = '已删除';
$lang->release->view = "发布详情";
$lang->release->browse = "浏览发布";
$lang->release->common = '发布';
$lang->release->create = "创建发布";
$lang->release->edit = "编辑发布";
$lang->release->linkStory = "关联需求";
$lang->release->linkBug = "关联Bug";
$lang->release->delete = "删除发布";
$lang->release->deleted = '已删除';
$lang->release->view = "发布详情";
$lang->release->browse = "浏览发布";
$lang->release->changeStatus = "修改状态";
$lang->release->batchUnlink = "批量移除";
$lang->release->batchUnlinkStory = "批量移除需求";
@@ -29,27 +29,27 @@ $lang->release->confirmUnlinkBug = "您确认移除该Bug吗?";
$lang->release->basicInfo = '基本信息';
$lang->release->id = 'ID';
$lang->release->product = $lang->productCommon;
$lang->release->branch = '平台/分支';
$lang->release->build = '版本';
$lang->release->name = '发布名称';
$lang->release->marker = '里程碑';
$lang->release->date = '发布日期';
$lang->release->desc = '描述';
$lang->release->status = '状态';
$lang->release->last = '上次发布';
$lang->release->unlinkStory = '移除需求';
$lang->release->unlinkBug = '移除Bug';
$lang->release->stories = '完成的需求';
$lang->release->bugs = '解决的Bug';
$lang->release->leftBugs = '遗留的Bug';
$lang->release->generatedBugs = '遗留的Bug';
$lang->release->finishStories = '本次共完成 %s 个需求';
$lang->release->resolvedBugs = '本次共解决 %s 个Bug';
$lang->release->createdBugs = '本次共遗留 %s 个Bug';
$lang->release->export = '导出HTML';
$lang->release->yesterday = '昨日发布';
$lang->release->id = 'ID';
$lang->release->product = $lang->productCommon;
$lang->release->branch = '平台/分支';
$lang->release->build = '版本';
$lang->release->name = '发布名称';
$lang->release->marker = '里程碑';
$lang->release->date = '发布日期';
$lang->release->desc = '描述';
$lang->release->status = '状态';
$lang->release->last = '上次发布';
$lang->release->unlinkStory = '移除需求';
$lang->release->unlinkBug = '移除Bug';
$lang->release->stories = '完成的需求';
$lang->release->bugs = '解决的Bug';
$lang->release->leftBugs = '遗留的Bug';
$lang->release->generatedBugs = '遗留的Bug';
$lang->release->finishStories = '本次共完成 %s 个需求';
$lang->release->resolvedBugs = '本次共解决 %s 个Bug';
$lang->release->createdBugs = '本次共遗留 %s 个Bug';
$lang->release->export = '导出HTML';
$lang->release->yesterday = '昨日发布';
$lang->release->filePath = '下载地址:';
$lang->release->scmPath = '版本库地址:';
+30 -29
View File
@@ -9,15 +9,15 @@
* @version $Id: zh-tw.php 4129 2013-01-18 01:58:14Z wwccss $
* @link http://www.zentao.net
*/
$lang->release->common = '發佈';
$lang->release->create = "創建發佈";
$lang->release->edit = "編輯發佈";
$lang->release->linkStory = "關聯需求";
$lang->release->linkBug = "關聯Bug";
$lang->release->delete = "刪除發佈";
$lang->release->deleted = '已刪除';
$lang->release->view = "發佈詳情";
$lang->release->browse = "瀏覽發佈";
$lang->release->common = '發佈';
$lang->release->create = "創建發佈";
$lang->release->edit = "編輯發佈";
$lang->release->linkStory = "關聯需求";
$lang->release->linkBug = "關聯Bug";
$lang->release->delete = "刪除發佈";
$lang->release->deleted = '已刪除';
$lang->release->view = "發佈詳情";
$lang->release->browse = "瀏覽發佈";
$lang->release->changeStatus = "修改狀態";
$lang->release->batchUnlink = "批量移除";
$lang->release->batchUnlinkStory = "批量移除需求";
@@ -29,26 +29,27 @@ $lang->release->confirmUnlinkBug = "您確認移除該Bug嗎?";
$lang->release->basicInfo = '基本信息';
$lang->release->id = 'ID';
$lang->release->product = $lang->productCommon;
$lang->release->branch = '平台/分支';
$lang->release->build = '版本';
$lang->release->name = '發佈名稱';
$lang->release->date = '發佈日期';
$lang->release->desc = '描述';
$lang->release->status = '狀態';
$lang->release->last = '上次發佈';
$lang->release->unlinkStory = '移除需求';
$lang->release->unlinkBug = '移除Bug';
$lang->release->stories = '完成的需求';
$lang->release->bugs = '解決的Bug';
$lang->release->leftBugs = '遺留的Bug';
$lang->release->generatedBugs = '遺留的Bug';
$lang->release->finishStories = '本次共完成 %s 個需求';
$lang->release->resolvedBugs = '本次共解決 %s 個Bug';
$lang->release->createdBugs = '本次共遺留 %s 個Bug';
$lang->release->export = '導出HTML';
$lang->release->yesterday = '昨日發佈';
$lang->release->id = 'ID';
$lang->release->product = $lang->productCommon;
$lang->release->branch = '平台/分支';
$lang->release->build = '版本';
$lang->release->name = '發佈名稱';
$lang->release->marker = '里程碑';
$lang->release->date = '發佈日期';
$lang->release->desc = '描述';
$lang->release->status = '狀態';
$lang->release->last = '上次發佈';
$lang->release->unlinkStory = '移除需求';
$lang->release->unlinkBug = '移除Bug';
$lang->release->stories = '完成的需求';
$lang->release->bugs = '解決的Bug';
$lang->release->leftBugs = '遺留的Bug';
$lang->release->generatedBugs = '遺留的Bug';
$lang->release->finishStories = '本次共完成 %s 個需求';
$lang->release->resolvedBugs = '本次共解決 %s 個Bug';
$lang->release->createdBugs = '本次共遺留 %s 個Bug';
$lang->release->export = '導出HTML';
$lang->release->yesterday = '昨日發佈';
$lang->release->filePath = '下載地址:';
$lang->release->scmPath = '版本庫地址:';
+9 -12
View File
@@ -24,16 +24,18 @@ $formID = $type == 'leftBug' ? 'unlinkedLeftBugsForm' : 'unlinkedBugsForm';
<thead>
<tr>
<th class='c-id'>
<?php if($allBugs):?>
<div class="checkbox-primary check-all" title="<?php echo $lang->selectAll?>">
<label></label>
</div>
<?php endif;?>
<?php echo $lang->idAB;?>
</th>
<th class='w-pri'><?php echo $lang->priAB;?></th>
<th> <?php echo $lang->bug->title;?></th>
<th class='w-user text-left'> <?php echo $lang->openedByAB;?></th>
<th class='w-user'> <?php echo $lang->bug->resolvedBy;?></th>
<th class='w-80px'> <?php echo $lang->statusAB;?></th>
<th class='w-user text-left'><?php echo $lang->openedByAB;?></th>
<th class='w-user'><?php echo $lang->bug->resolvedBy;?></th>
<th class='w-80px'><?php echo $lang->statusAB;?></th>
</tr>
</thead>
<tbody>
@@ -42,11 +44,7 @@ $formID = $type == 'leftBug' ? 'unlinkedLeftBugsForm' : 'unlinkedBugsForm';
<?php if(strpos(",{$releaseBugs},", ",$bug->id,") !== false) continue;?>
<tr>
<td class='c-id'>
<div class="checkbox-primary">
<input type='checkbox' name='bugs[<?php echo $bug->id?>]' value='<?php echo $bug->id;?>' <?php if($type == 'leftBug' or $bug->status == 'resolved' or $bug->status == 'closed') echo "checked";?> />
<label></label>
</div>
<?php echo html::a($this->createLink('bug', 'view', "bugID=$bug->id"), $bug->id);?>
<?php echo html::checkbox('bugs', array($bug->id => sprintf('%03d', $bug->id)), ($type == 'leftBug' or $bug->status == 'resolved' or $bug->status == 'closed') ? $bud->id : '');?>
</td>
<td><span class='<?php echo 'pri' . zget($lang->bug->priList, $bug->pri, $bug->pri);?>'><?php echo zget($lang->bug->priList, $bug->pri, $bug->pri)?></span></td>
<td class='text-left nobr' title='<?php echo $bug->title?>'><?php echo html::a($this->createLink('bug', 'view', "bugID=$bug->id", '', true), $bug->title, '', "data-toggle='modal' data-type='iframe' data-width='90%'");?></td>
@@ -58,15 +56,15 @@ $formID = $type == 'leftBug' ? 'unlinkedLeftBugsForm' : 'unlinkedBugsForm';
<?php endforeach;?>
</tbody>
</table>
<?php if($unlinkedCount):?>
<div class='table-footer'>
<?php if($unlinkedCount):?>
<div class="checkbox-primary check-all"><label><?php echo $lang->selectAll?></label></div>
<div class="btn-toolbar">
<?php echo html::submitButton($lang->release->linkBug);?>
<?php echo html::a(inlink('view', "releaseID=$release->id&type=$type"), $lang->goback, '', "class='btn'");?>
</div>
<?php endif;?>
<?php echo html::a(inlink('view', "releaseID=$release->id&type=$type"), $lang->goback, '', "class='btn'");?>
</div>
<?php endif;?>
</form>
</div>
<script>
@@ -74,6 +72,5 @@ $(function()
{
ajaxGetSearchForm('#<?php echo $type == 'bug' ? 'bugs' : 'leftBugs'?> .linkBox #queryBox')
setModal();
$('[data-ride="table"]').table();
})
</script>
+6 -7
View File
@@ -20,9 +20,11 @@
<thead>
<tr>
<th class='c-id'>
<?php if($allStories):?>
<div class="checkbox-primary check-all" title="<?php echo $lang->selectAll?>">
<label></label>
</div>
<?php endif;?>
<?php echo $lang->idAB;?>
</th>
<th class='w-pri'><?php echo $lang->priAB;?></th>
@@ -59,17 +61,15 @@
<?php endforeach;?>
</tbody>
</table>
<?php if($unlinkedCount):?>
<div class='table-footer'>
<?php if($unlinkedCount):?>
<div class="checkbox-primary check-all"><label><?php echo $lang->selectAll?></label></div>
<div class='btn-toolbar'>
<?php
echo html::selectButton() . html::submitButton($lang->story->linkStory);
echo html::a(inlink('view', "releaseID=$release->id&type=story"), $lang->goback, '', "class='btn'");
?>
<?php echo html::submitButton($lang->release->linkStory);?>
</div>
<?php endif;?>
<?php echo html::a(inlink('view', "releaseID=$release->id&type=story"), $lang->goback, '', "class='btn'");?>
</div>
<?php endif;?>
</form>
</div>
<script>
@@ -77,6 +77,5 @@ $(function()
{
ajaxGetSearchForm('#stories .linkBox #queryBox');
setModal();
$('[data-ride="table"]').table();
})
</script>
+1
View File
@@ -167,6 +167,7 @@ $lang->task->confirmRecord = '"剩餘"為0,任務將標記為"已完
$lang->task->noticeLinkStory = "沒有可關聯的相關需求,您可以為當前項目%s,然後%s";
$lang->task->noticeSaveRecord = '您有尚未保存的工時記錄,請先將其保存。';
$lang->task->commentActions = '%s. %s, 由 <strong>%s</strong> 添加備註。';
$lang->task->noData = '暫無';
$lang->task->error = new stdclass();
$lang->task->error->consumedNumber = '"已經消耗"必須為數字';