This commit is contained in:
Catouse
2018-05-18 14:45:41 +08:00
29 changed files with 72 additions and 60 deletions
-1
View File
@@ -1,5 +1,4 @@
ALTER TABLE `zt_release` ADD `marker` enum('0','1') NOT NULL default '0' AFTER `name`;
ALTER TABLE `zt_doc` ADD `collector` text NOT NULL AFTER `views`;
ALTER TABLE `zt_doc` ADD `visitedDate` datetime NOT NULL AFTER `editedDate`;
ALTER TABLE `zt_doclib` ADD `collector` text NOT NULL AFTER `main`;
ALTER TABLE `zt_module` ADD `collector` text NOT NULL AFTER `owner`;
-1
View File
@@ -260,7 +260,6 @@ CREATE TABLE IF NOT EXISTS `zt_doc` (
`addedDate` datetime NOT NULL,
`editedBy` varchar(30) NOT NULL,
`editedDate` datetime NOT NULL,
`visitedDate` datetime NOT NULL,
`acl` varchar(10) NOT NULL DEFAULT 'open',
`groups` varchar(255) NOT NULL,
`users` text NOT NULL,
+1
View File
@@ -130,6 +130,7 @@ $lang->bug->ditto = '同上';
$lang->bug->dittoNotice = '該bug與上一bug不屬於同一產品!';
$lang->bug->noAssigned = '未指派';
$lang->bug->noBug = '暫時沒有BUG,您現在可以';
$lang->bug->noModule = '<div>您現在還沒有模組信息</div><div>請維護測試模組</div>';
/* 頁面標籤。*/
$lang->bug->lblAssignedTo = '當前指派';
+4 -3
View File
@@ -71,7 +71,7 @@ class bugModel extends model
->cleanInt('product, module, severity')
->join('openedBuild', ',')
->join('mailto', ',')
->remove('files, labels,uid,oldTaskID')
->remove('files, labels,uid,oldTaskID,contactListMenu')
->get();
/* Check repeat bug. */
@@ -545,7 +545,7 @@ class bugModel extends model
->setIF($this->post->resolution == '' and $this->post->resolvedDate =='', 'status', 'active')
->setIF($this->post->resolution != '', 'confirmed', 1)
->setIF($this->post->story != false and $this->post->story != $oldBug->story, 'storyVersion', $this->loadModel('story')->getVersion($this->post->story))
->remove('comment,files,labels,uid')
->remove('comment,files,labels,uid,contactListMenu')
->get();
$bug = $this->loadModel('file')->processImgURL($bug, $this->config->bug->editor->edit['id'], $this->post->uid);
@@ -2421,7 +2421,8 @@ class bugModel extends model
switch($id)
{
case 'id':
if($mode == 'table' && $canBatchAction)
//if($mode == 'table' && $canBatchAction)
if($canBatchAction)
{
echo html::checkbox('bugIDList', array($bug->id => sprintf('%03d', $bug->id)));
}
+3 -3
View File
@@ -243,8 +243,8 @@ $lang->project->subMenu->list->tree = '樹狀圖|project|tree|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 = array('link' => '測試單|project|testtask|projectID=%s', 'subModule' => 'testreport');
$lang->project->subMenu->qa->build = array('link' => '版本|project|build|projectID=%s', 'subModule' => 'build');
$lang->project->subMenu->qa->testtask = array('link' => '測試單|project|testtask|projectID=%s', 'subModule' => 'testreport,testtask');
$lang->project->subMenu->action = new stdclass();
$lang->project->subMenu->action->dynamic = '動態|project|dynamic|projectID=%s';
@@ -345,7 +345,7 @@ $lang->company->menu = new stdclass();
$lang->company->menu->browseUser = array('link' => '用戶|company|browse', 'subModule' => 'user');
$lang->company->menu->dept = array('link' => '部門|dept|browse', 'subModule' => 'dept');
$lang->company->menu->browseGroup = array('link' => '權限|group|browse', 'subModule' => 'group');
$lang->company->menu->view = array('link' => '公司|company|view', 'alias' => 'edit');
$lang->company->menu->view = array('link' => '公司|company|view');
$lang->company->menu->dynamic = '動態|company|dynamic|';
$lang->dept = new stdclass();
+2 -1
View File
@@ -194,7 +194,8 @@ $(function()
return sets;
}).get();
window.saveDatatableConfig('<?php echo $mode == 'table' ? 'tablecols' : 'cols';?>', setting, true, $('#global1').prop('checked') ? 1 : 0);
//window.saveDatatableConfig('<?php echo $mode == 'table' ? 'tablecols' : 'cols';?>', setting, true, $('#global1').prop('checked') ? 1 : 0);
window.saveDatatableConfig('<?php echo 'cols';?>', setting, true, $('#global1').prop('checked') ? 1 : 0);
});
$('#resetBtn').on("click", function()
+8
View File
@@ -103,6 +103,8 @@ class doc extends control
$this->lang->doc->menuOrder = $this->lang->product->menuOrder;
$this->product->setMenu($this->product->getPairs(), $lib->product);
$this->lang->set('menugroup.doc', 'product');
if(common::hasPriv('doc', 'create')) $this->lang->modulePageActions = html::a(helper::createLink('doc', 'create', "libID=$libID"), "<i class='icon icon-plus'></i> " . $this->lang->doc->create, '', "class='btn btn-primary'");
}
elseif($from == 'project')
{
@@ -110,6 +112,8 @@ class doc extends control
$this->lang->doc->menuOrder = $this->lang->project->menuOrder;
$this->project->setMenu($this->project->getPairs('nocode'), $lib->project);
$this->lang->set('menugroup.doc', 'project');
if(common::hasPriv('doc', 'create')) $this->lang->modulePageActions = html::a(helper::createLink('doc', 'create', "libID=$libID"), "<i class='icon icon-plus'></i> " . $this->lang->doc->create, '', "class='btn btn-primary'");
}
else
{
@@ -296,6 +300,8 @@ class doc extends control
$this->lang->doc->menuOrder = $this->lang->product->menuOrder;
$this->product->setMenu($this->product->getPairs(), $lib->product);
$this->lang->set('menugroup.doc', 'product');
if(common::hasPriv('doc', 'create')) $this->lang->modulePageActions = html::a(helper::createLink('doc', 'create', "libID=$libID"), "<i class='icon icon-plus'></i> " . $this->lang->doc->create, '', "class='btn btn-primary'");
}
elseif($this->from == 'project')
{
@@ -303,6 +309,8 @@ class doc extends control
$this->lang->doc->menuOrder = $this->lang->project->menuOrder;
$this->project->setMenu($this->project->getPairs('nocode'), $lib->project);
$this->lang->set('menugroup.doc', 'project');
if(common::hasPriv('doc', 'create')) $this->lang->modulePageActions = html::a(helper::createLink('doc', 'create', "libID=$libID"), "<i class='icon icon-plus'></i> " . $this->lang->doc->create, '', "class='btn btn-primary'");
}
else
{
+17 -16
View File
@@ -60,20 +60,21 @@ $lang->doc->myDoc = '我的文檔';
$lang->doc->myCollection = '我的收藏';
/* 方法列表。*/
$lang->doc->index = '文檔主頁';
$lang->doc->create = '創建文檔';
$lang->doc->edit = '編輯文檔';
$lang->doc->delete = '刪除文檔';
$lang->doc->browse = '文檔列表';
$lang->doc->view = '文檔詳情';
$lang->doc->diff = '對比';
$lang->doc->sort = '排序';
$lang->doc->manageType = '維護分類';
$lang->doc->editType = '編輯分類';
$lang->doc->deleteType = '刪除分類';
$lang->doc->addType = '增加分類';
$lang->doc->childType = '子分類';
$lang->doc->collect = '收藏';
$lang->doc->index = '文檔主頁';
$lang->doc->create = '創建文檔';
$lang->doc->edit = '編輯文檔';
$lang->doc->delete = '刪除文檔';
$lang->doc->browse = '文檔列表';
$lang->doc->view = '文檔詳情';
$lang->doc->diff = '對比';
$lang->doc->sort = '排序';
$lang->doc->manageType = '維護分類';
$lang->doc->editType = '編輯分類';
$lang->doc->deleteType = '刪除分類';
$lang->doc->addType = '增加分類';
$lang->doc->childType = '子分類';
$lang->doc->collect = '收藏';
$lang->doc->cancelCollection = '取消收藏';
$lang->doc->libName = '文檔庫名稱';
$lang->doc->libType = '文檔庫類型';
@@ -130,8 +131,8 @@ $lang->doc->fastMenuIconList['byediteddate'] = 'icon-folder-upload';
$lang->doc->fastMenuIconList['openedbyme'] = 'icon-folder-account';
$lang->doc->fastMenuIconList['collectedbyme'] = 'icon-folder-star';
$lang->doc->customObjectLibs['files'] = '是否顯示附件庫';
$lang->doc->customObjectLibs['customFiles'] = '是否顯示自定義檔案';
$lang->doc->customObjectLibs['files'] = '顯示附件庫';
$lang->doc->customObjectLibs['customFiles'] = '顯示自定義檔案';
$lang->doc->confirmDelete = "您確定刪除該文檔嗎?";
$lang->doc->confirmDeleteLib = "您確定刪除該文檔庫嗎?";
+2 -5
View File
@@ -159,16 +159,13 @@ class docModel extends model
list($menuLabel, $module, $method, $vars) = explode('|', $menu['link']);
$actions .= html::a(helper::createLink($module, $method, $vars), $menuLabel, '', "class='btn'");
}
}
}
$actions .= html::a(helper::createLink('doc', 'createLib'), "<i class='icon icon-folder-plus'></i> " . $this->lang->doc->createLib, '', "class='btn btn-secondary iframe'");
if($libID) $actions .= html::a(helper::createLink('doc', 'create', "libID=$libID"), "<i class='icon icon-plus'></i> " . $this->lang->doc->create, '', "class='btn btn-primary'");
$actions .= common::hasPriv('doc', 'createLib') ? html::a(helper::createLink('doc', 'createLib'), "<i class='icon icon-folder-plus'></i> " . $this->lang->doc->createLib, '', "class='btn btn-secondary iframe'") : '';
if($libID and common::hasPriv('doc', 'create')) $actions .= html::a(helper::createLink('doc', 'create', "libID=$libID"), "<i class='icon icon-plus'></i> " . $this->lang->doc->create, '', "class='btn btn-primary'");
$this->lang->modulePageActions = $actions;
}
//$selectHtml .= $crumb ? $crumb : $this->getCrumbs($libID, $moduleID);
+1 -1
View File
@@ -54,7 +54,7 @@
<?php endforeach;?>
</div>
</div>
<div class='table-footer'><?php echo $pager->show('right', 'pagerjs');?></div>
<div class='table-footer'><?php $pager->show('right', 'pagerjs');?></div>
</div>
</div>
</div>
+1 -1
View File
@@ -94,7 +94,7 @@ var browseType = '<?php echo $browseType;?>';
</tbody>
</table>
</div>
<div class='table-footer'><?php echo $pager->show('right', 'pagerjs');?></div>
<div class='table-footer'><?php $pager->show('right', 'pagerjs');?></div>
</div>
</div>
<?php endif;?>
+1 -1
View File
@@ -43,6 +43,6 @@
<?php endforeach;?>
</div>
</div>
<div class='table-footer'><?php echo $pager->show('right', 'pagerjs');?></div>
<div class='table-footer'><?php $pager->show('right', 'pagerjs');?></div>
</div>
</div>
+1 -1
View File
@@ -170,7 +170,7 @@
</thead>
<tbody>
<?php foreach($myDocs as $doc):?>
<tr data-url="">
<tr data-url="<?php echo $this->createLink('doc', 'view', "docID={$doc->id}");?>">
<td class="c-name"><?php echo $doc->title;?></td>
<td class="c-user"><?php echo zget($users, $doc->addedBy);?></td>
<td class="c-datetime"><?php echo formatTime($doc->editedDate) ? formatTime($doc->editedDate, 'm-d H:i') : formatTime($doc->addedDate, 'm-d H:i');?></td>
+1 -1
View File
@@ -52,7 +52,7 @@
<?php foreach($libs as $libID => $lib):?>
<?php if($libID == 'project' and $from != 'doc') continue;?>
<?php if(strpos($this->config->doc->custom->objectLibs, 'files') === false && $libID == 'files') continue;?>
<?php if(strpos($this->config->doc->custom->objectLibs, 'customFiles') === false && !$lib->main) continue;?>
<?php if(strpos($this->config->doc->custom->objectLibs, 'customFiles') === false && isset($lib->main) && !$lib->main) continue;?>
<?php $libLink = inlink('browse', "libID=$libID&browseType=all&param=0&orderBy=id_desc&from=$from");?>
<?php if($libID == 'project') $libLink = inlink('allLibs', "type=project&product=$object->id");?>
+1 -1
View File
@@ -143,7 +143,7 @@
</div>
</div>
<?php endif?>
<div class='table-footer'><?php echo $pager->show('right', 'pagerjs');?></div>
<div class='table-footer'><?php $pager->show('right', 'pagerjs');?></div>
</div>
</div>
</div>
+1
View File
@@ -4,6 +4,7 @@ $lang->my->common = '我的地盤';
/* 方法列表。*/
$lang->my->index = '首頁';
$lang->my->todo = '我的待辦';
$lang->my->calendar = '日程';
$lang->my->task = '我的任務';
$lang->my->bug = '我的Bug';
$lang->my->testTask = '我的版本';
-2
View File
@@ -41,7 +41,6 @@ $lang->project->whitelist = '分組白名單';
$lang->project->totalEstimate = '預計';
$lang->project->totalConsumed = '消耗';
$lang->project->totalLeft = '剩餘';
$lang->project->Left = '剩餘';
$lang->project->progress = '進度';
$lang->project->hours = '預計 %s 消耗 %s 剩餘 %s';
$lang->project->viewBug = '查看bug';
@@ -117,7 +116,6 @@ $lang->project->latestDynamic = '最新動態';
$lang->project->build = '所有版本';
$lang->project->testtask = '測試任務';
$lang->project->burn = '燃盡圖';
$lang->project->baseline = '基準綫';
$lang->project->computeBurn = '更新';
$lang->project->burnData = '燃盡圖數據';
$lang->project->fixFirst = '修改首天工時';
+1 -1
View File
@@ -239,7 +239,7 @@
}
?>
</div>
<?php echo $pager->show('right', 'pagerjs');?>
<?php $pager->show('right', 'pagerjs');?>
</div>
<?php endif;?>
</form>
+2 -2
View File
@@ -160,7 +160,7 @@ class storyModel extends model
->setIF($bugID > 0, 'fromBug', $bugID)
->join('mailto', ',')
->stripTags($this->config->story->editor->create['id'], $this->config->allowedTags)
->remove('files,labels,needNotReview,newStory,uid')
->remove('files,labels,needNotReview,newStory,uid,contactListMenu')
->get();
/* Check repeat story. */
@@ -492,7 +492,7 @@ class storyModel extends model
->setIF($this->post->closedReason != false and $this->post->closedBy == false, 'closedBy', $this->app->user->account)
->join('reviewedBy', ',')
->join('mailto', ',')
->remove('linkStories,childStories,files,labels,comment')
->remove('linkStories,childStories,files,labels,comment,contactListMenu')
->get();
if(isset($story->plan) and is_array($story->plan)) $story->plan = trim(join(',', $story->plan), ',');
if(empty($_POST['product'])) $story->branch = $oldStory->branch;
+4 -3
View File
@@ -39,7 +39,7 @@ class taskModel extends model
->setDefault('openedDate', helper::now())
->stripTags($this->config->task->editor->create['id'], $this->config->allowedTags)
->join('mailto', ',')
->remove('after,files,labels,assignedTo,uid,storyEstimate,storyDesc,storyPri,team,teamEstimate,teamMember,multiple,teams')
->remove('after,files,labels,assignedTo,uid,storyEstimate,storyDesc,storyPri,team,teamEstimate,teamMember,multiple,teams,contactListMenu')
->get();
foreach($this->post->assignedTo as $assignedTo)
@@ -530,7 +530,7 @@ class taskModel extends model
->add('lastEditedDate', $now)
->stripTags($this->config->task->editor->edit['id'], $this->config->allowedTags)
->join('mailto', ',')
->remove('comment,files,labels,uid,multiple,team,teamEstimate,teamConsumed,teamLeft')
->remove('comment,files,labels,uid,multiple,team,teamEstimate,teamConsumed,teamLeft,contactListMenu')
->get();
if($task->consumed < $oldTask->consumed) die(js::error($this->lang->task->error->consumedSmall));
@@ -2258,7 +2258,8 @@ class taskModel extends model
switch($id)
{
case 'id':
if($mode == 'table' && $canBatchAction)
//if($mode == 'table' && $canBatchAction)
if($canBatchAction)
{
echo html::checkbox('taskIDList', array($task->id => sprintf('%03d', $task->id)));
}
+4
View File
@@ -118,6 +118,7 @@ $lang->testcase->allCases = '所有';
$lang->testcase->allTestcases = '所有用例';
$lang->testcase->needConfirm = '需求變動';
$lang->testcase->bySearch = '搜索';
$lang->testcase->unexecuted = '未執行';
$lang->testcase->lblStory = '相關需求';
$lang->testcase->lblLastEdited = '最後編輯';
@@ -131,6 +132,7 @@ $lang->testcase->legendLinkBugs = '相關Bug';
$lang->testcase->legendOpenAndEdit = '創建編輯';
$lang->testcase->legendComment = '備註';
$lang->testcase->summary = "本頁共 <strong>%s</strong> 個用例,已執行<strong>%s</strong>個。";
$lang->testcase->confirmDelete = '您確認要刪除該測試用例嗎?';
$lang->testcase->confirmBatchDelete = '您確認要批量刪除這些測試用例嗎?';
$lang->testcase->ditto = '同上';
@@ -188,6 +190,8 @@ $lang->testcase->noFunction = '不存在iconv和mb_convert_encoding轉碼
$lang->testcase->noRequire = "%s行的“%s”是必填欄位,不能為空";
$lang->testcase->noLibrary = "現在還沒有公共庫,請先創建!";
$lang->testcase->mustChooseResult = '必須選擇評審結果';
$lang->testcase->noModule = '<div>您現在還沒有模組信息</div><div>請維護測試模組</div>';
$lang->testcase->noCase = '暫時沒有用例,您現在可以';
$lang->testcase->searchStories = '鍵入來搜索需求';
$lang->testcase->selectLib = '請選擇庫';
+2 -1
View File
@@ -1307,7 +1307,8 @@ class testcaseModel extends model
switch($id)
{
case 'id':
echo $mode == 'table' ? html::checkbox('caseIDList', array($case->id => sprintf('%03d', $case->id))) : sprintf('%03d', $case->id);
//echo $mode == 'table' ? html::checkbox('caseIDList', array($case->id => sprintf('%03d', $case->id))) : sprintf('%03d', $case->id);
echo html::checkbox('caseIDList', array($case->id => sprintf('%03d', $case->id)));
break;
case 'pri':
echo "<span class='label-pri label-pri-" . $case->pri . "'>";
+1 -1
View File
@@ -243,7 +243,7 @@ js::set('flow', $this->config->global->flow);
<?php endif;?>
</div>
</div>
<?php echo $pager->show('right', 'pagerjs');?>
<?php $pager->show('right', 'pagerjs');?>
</div>
<?php endif;?>
</form>
+1 -1
View File
@@ -136,7 +136,7 @@
</div>
</div>
<?php endif;?>
<?php echo $pager->show('right', 'pagerjs');?>
<?php $pager->show('right', 'pagerjs');?>
</div>
</div>
</form>
+1
View File
@@ -104,6 +104,7 @@ $lang->testtask->showFail = '失敗<span class="text-danger">%s</span>次';
$lang->testtask->confirmDelete = '您確認要刪除該版本嗎?';
$lang->testtask->confirmUnlinkCase = '您確認要移除該用例嗎?';
$lang->testtask->noticeNoOther = '該產品還沒有其他測試版本';
$lang->testtask->noTesttask = '暫時沒有記錄,您現在可以';
$lang->testtask->assignedToMe = '指派給我';
$lang->testtask->allCases = '所有用例';
+10 -10
View File
@@ -99,7 +99,7 @@ class testtaskModel extends model
->setDefault('build', '')
->stripTags($this->config->testtask->editor->create['id'], $this->config->allowedTags)
->join('mailto', ',')
->remove('uid')
->remove('uid,contactListMenu')
->get();
$task = $this->loadModel('file')->processImgURL($task, $this->config->testtask->editor->create['id'], $this->post->uid);
@@ -1156,14 +1156,14 @@ class testtaskModel extends model
switch ($id)
{
case 'id':
if($mode == 'table')
{
//if($mode == 'table')
//{
echo html::checkbox('caseIDList', array($run->case => sprintf('%03d', $run->case)));
}
else
{
echo $canView ? html::a($caseLink, sprintf('%03d', $run->case)) : sprintf('%03d', $run->case);
}
//}
//else
//{
// echo $canView ? html::a($caseLink, sprintf('%03d', $run->case)) : sprintf('%03d', $run->case);
//}
break;
case 'pri':
echo "<span class='label-pri label-pri-" . $run->pri . "'>";
@@ -1222,8 +1222,8 @@ class testtaskModel extends model
if(!helper::isZeroDate($run->lastRunDate)) echo date(DT_MONTHTIME1, strtotime($run->lastRunDate));
break;
case 'lastRunResult':
$lastRunResult = $run->lastRunResult ? $this->lang->testcase->resultList[$run->lastRunResult] : '';
echo html::a(helper::createLink('testtask', 'results', "id=$run->id", '', true), "<i class='icon icon-list-alt'></i> <span>{$lastRunResult}</span>", '', "class='iframe btn btn-icon-left'");
$lastRunResultText = $run->lastRunResult ? zget($this->lang->testcase->resultList, $run->lastRunResult, $run->lastRunResult) : $this->lang->testcase->unexecuted;
echo html::a(helper::createLink('testtask', 'results', "id={$run->id}", '', true), "<i class='icon icon-list-alt'></i> <span>{$lastRunResultText}</span>", '', "class='iframe btn btn-icon-left'");
break;
case 'story':
if($run->story and $run->storyTitle) echo html::a(helper::createLink('story', 'view', "storyID=$run->story"), $run->storyTitle);
+1 -1
View File
@@ -126,7 +126,7 @@
?>
</div>
<?php endif;?>
<?php echo $pager->show('right', 'pagerjs');?>
<?php $pager->show('right', 'pagerjs');?>
</div>
<?php endif;?>
</form>
+1 -1
View File
@@ -219,7 +219,7 @@ class todoModel extends model
$todo->type = $data->types[$todoID];
$todo->pri = $data->pris[$todoID];
$todo->status = $data->status[$todoID];
$todo->name = $todo->type == 'custom' ? $data->names[$todoID] : '';
$todo->name = ($todo->type == 'custom' or $todo->type == 'cycle') ? $data->names[$todoID] : '';
$todo->begin = $data->begins[$todoID];
$todo->end = $data->ends[$todoID];
if($todo->type == 'task') $todo->idvalue = isset($data->tasks[$todoID]) ? $data->tasks[$todoID] : 0;
-1
View File
@@ -135,4 +135,3 @@ $lang->upgrade->fromVersions['9_8'] = '9.8';
$lang->upgrade->fromVersions['9_8_1'] = '9.8.1';
$lang->upgrade->fromVersions['9_8_2'] = '9.8.2';
$lang->upgrade->fromVersions['9_8_3'] = '9.8.3';
$lang->upgrade->fromVersions['10_0_beta'] = '10.0.beta';