This commit is contained in:
Catouse
2018-05-15 16:48:09 +08:00
36 changed files with 379 additions and 317 deletions
+4 -4
View File
@@ -14,10 +14,10 @@
<table class='table table-borderless table-hover table-fixed-head block-builds'>
<thead>
<tr>
<th width='50'><?php echo $lang->idAB?></th>
<th> <?php echo $lang->build->product;?></th>
<th> <?php echo $lang->build->name;?></th>
<th width='80'><?php echo $lang->build->date;?></th>
<th class='w-id text-center'><?php echo $lang->idAB?></th>
<th><?php echo $lang->build->product;?></th>
<th><?php echo $lang->build->name;?></th>
<th class='w-date'><?php echo $lang->build->date;?></th>
</tr>
</thead>
<tbody>
+14 -14
View File
@@ -23,17 +23,17 @@
</style>
<table class='table table-borderless table-hover table-fixed-head block-cases <?php if(!$longBlock) echo 'block-sm';?>'>
<thead>
<tr>
<tr class='text-center'>
<?php if($longBlock):?>
<th class='c-id' width='50'><?php echo $lang->idAB?></th>
<th class='c-id'><?php echo $lang->idAB?></th>
<?php endif;?>
<th class='c-pri' width='50'><?php echo $lang->priAB?></th>
<th class='c-title'><?php echo $lang->case->title;?></th>
<th class='c-pri'><?php echo $lang->priAB?></th>
<th class='c-title text-left'><?php echo $lang->case->title;?></th>
<?php if($longBlock):?>
<th class='c-runtime' width='120'> <?php echo $lang->testtask->lastRunTime;?></th>
<th class='c-result' width='60'> <?php echo $lang->testtask->lastRunResult;?></th>
<th class='c-runtime'><?php echo $lang->testtask->lastRunTime;?></th>
<th class='c-result'><?php echo $lang->testtask->lastRunResult;?></th>
<?php endif;?>
<th class='c-status' width='70'><?php echo $lang->statusAB;?></th>
<th class='c-status'><?php echo $lang->statusAB;?></th>
</tr>
</thead>
<tbody>
@@ -42,17 +42,17 @@
$appid = isset($_GET['entry']) ? "class='app-btn' data-id='{$this->get->entry}'" : '';
$viewLink = $this->createLink('testcase', 'view', "caseID={$case->id}");
?>
<tr data-url='<?php echo empty($sso) ? $viewLink : $sso . $sign . 'referer=' . base64_encode($viewLink); ?>' <?php echo $appid?>>
<tr class='text-center' data-url='<?php echo empty($sso) ? $viewLink : $sso . $sign . 'referer=' . base64_encode($viewLink); ?>' <?php echo $appid?>>
<?php if($longBlock):?>
<td class='text-center c-id'><?php echo $case->id;?></td>
<td class='c-id'><?php echo $case->id;?></td>
<?php endif;?>
<td class='text-center c-pri'><span class='label-pri label-pri-<?php echo $case->pri?>'><?php echo zget($lang->case->priList, $case->pri, $case->pri)?></span></td>
<td class='c-title' style='color: <?php echo $case->color?>' title='<?php echo $case->title?>'><?php echo $case->title?></td>
<td class='c-pri'><span class='label-pri label-pri-<?php echo $case->pri?>'><?php echo zget($lang->case->priList, $case->pri, $case->pri)?></span></td>
<td class='c-title text-left' style='color: <?php echo $case->color?>' title='<?php echo $case->title?>'><?php echo $case->title?></td>
<?php if($longBlock):?>
<td class='text-center c-runtime'><?php if(!helper::isZeroDate($case->lastRunDate)) echo date(DT_MONTHTIME1, strtotime($case->lastRunDate));?></td>
<td class='text-center c-result'><?php if($case->lastRunResult) echo $lang->testcase->resultList[$case->lastRunResult];?></td>
<td class='c-runtime'><?php if(!helper::isZeroDate($case->lastRunDate)) echo date(DT_MONTHTIME1, strtotime($case->lastRunDate));?></td>
<td class='c-result'><?php if($case->lastRunResult) echo $lang->testcase->resultList[$case->lastRunResult];?></td>
<?php endif;?>
<td class='text-left c-status' title='<?php echo zget($lang->testcase->statusList, $case->status)?>'>
<td class='c-status' title='<?php echo zget($lang->testcase->statusList, $case->status)?>'>
<span class="case-status-<?php echo $case->status?>">
<span class="label label-dot"></span>
<span class='status-text'><?php echo zget($lang->testcase->statusList, $case->status);?></span>
+7 -7
View File
@@ -15,11 +15,11 @@
<thead>
<tr>
<th class='c-name'><?php echo $lang->product->name;?></th>
<th class='c-num'><?php echo $lang->product->plans;?></th>
<th class='c-num'><?php echo $lang->product->releases;?></th>
<?php if($longBlock):?>
<th class='c-name'><?php echo $lang->product->currentProject;?></th>
<?php endif;?>
<th class='c-num'><?php echo $lang->product->plans;?></th>
<th class='c-num'><?php echo $lang->product->releases;?></th>
<th class='c-num'><?php echo $lang->story->statusList['active'] . $lang->story->common;?></th>
<th class='c-num'><?php echo $lang->bug->unResolved . $lang->bug->common;?></th>
</tr>
@@ -30,13 +30,13 @@
$appid = isset($_GET['entry']) ? "class='app-btn' data-id='{$this->get->entry}'" : "";
$viewLink = $this->createLink('product', 'browse', 'productID=' . $product->id);
?>
<tr data-url='<?php echo empty($sso) ? $viewLink : $sso . $sign . 'referer=' . base64_encode($viewLink); ?>' <?php echo $appid?>>
<td class='c-name' title='<?php echo $product->name?>'><?php echo $product->name?></td>
<tr class='text-center' data-url='<?php echo empty($sso) ? $viewLink : $sso . $sign . 'referer=' . base64_encode($viewLink); ?>' <?php echo $appid?>>
<td class='c-name text-left' title='<?php echo $product->name?>'><?php echo $product->name?></td>
<?php if($longBlock):?>
<td class='c-name text-left'><?php echo zget($projects, $product->id, '');?></td>
<?php endif;?>
<td class="c-num"><?php echo $product->plans?></td>
<td class="c-num"><?php echo $product->releases?></td>
<?php if($longBlock):?>
<td class='c-name'><?php echo zget($projects, $product->id, '');?></td>
<?php endif;?>
<td class="c-num"><?php echo $product->stories['active']?></td>
<td class="c-num"><?php echo $product->unResolved?></td>
</tr>
+17 -4
View File
@@ -14,12 +14,16 @@
<table class='table table-borderless table-hover table-fixed block-release'>
<thead>
<tr>
<th class='text-center w-50px'><?php echo $lang->idAB?></th>
<?php if($longBlock):?>
<th class='c-id text-center'><?php echo $lang->idAB?></th>
<th><?php echo $lang->release->product;?></th>
<?php endif;?>
<th><?php echo $lang->release->name;?></th>
<?php if($longBlock):?>
<th><?php echo $lang->release->build;?></th>
<th class='text-center w-80px'><?php echo $lang->release->date;?></th>
<th class='text-center w-70px'><?php echo $lang->release->status;?></th>
<?php endif;?>
<th class='c-date text-center'><?php echo $lang->release->date;?></th>
<th class='text-center w-90px'><?php echo $lang->release->status;?></th>
</tr>
</thead>
<tbody>
@@ -29,12 +33,21 @@
$viewLink = $this->createLink('release', 'view', "releaseID={$release->id}");
?>
<tr data-url='<?php echo empty($sso) ? $viewLink : $sso . $sign . 'referer=' . base64_encode($viewLink); ?>' <?php echo $appid?>>
<?php if($longBlock):?>
<td class='text-center'><?php echo $release->id;?></td>
<td title='<?php echo $release->productName?>'><?php echo $release->productName?></td>
<?php endif;?>
<td title='<?php echo $release->name?>'><?php echo $release->name?></td>
<?php if($longBlock):?>
<td title='<?php echo $release->buildName?>'><?php echo $release->buildName?></td>
<?php endif;?>
<td class='text-center'><?php echo $release->date?></td>
<td class='text-center'><?php echo $lang->release->statusList[$release->status]?></td>
<td class='c-status' title='<?php echo zget($lang->release->statusList, $release->status);?>'>
<span class="status-<?php echo $release->status?>">
<span class="label label-dot"></span>
<span class='status-text'><?php echo zget($lang->release->statusList, $release->status);?></span>
</span>
</td>
</tr>
<?php endforeach;?>
</tbody>
+11 -2
View File
@@ -14,7 +14,9 @@
<table class='table table-borderless table-hover table-fixed-head block-stories <?php if(!$longBlock) echo 'block-sm'?>'>
<thead>
<tr>
<?php if($longBlock):?>
<th class="c-id"><?php echo $lang->idAB?></th>
<?php endif;?>
<th class="c-pri"><?php echo $lang->priAB?></th>
<th class="c-name"><?php echo $lang->story->title;?></th>
<?php if($longBlock):?>
@@ -33,14 +35,21 @@
$viewLink = $this->createLink('story', 'view', "storyID={$story->id}");
?>
<tr data-url='<?php echo empty($sso) ? $viewLink : $sso . $sign . 'referer=' . base64_encode($viewLink); ?>' <?php echo $appid?>>
<?php if($longBlock):?>
<td class="c-id"><?php echo $story->id;?></td>
<?php endif;?>
<?php $pri = zget($lang->story->priList, $story->pri, $story->pri);?>
<td class="c-pri"><span class="label-pri label-pri-<?php echo $pri?>"><?php echo $pri?></span></td>
<td class="c-name" style='color: <?php echo $story->color?>' title='<?php echo $story->title?>'><?php echo $story->title?></td>
<?php if($longBlock):?>
<td class='c-estimate'><?php echo $story->estimate?></td>
<td class='c-estimate text-center'><?php echo $story->estimate?></td>
<?php endif;?>
<td class='c-status'><?php echo zget($lang->story->statusList, $story->status);?></td>
<td class='c-status' title='<?php echo zget($lang->story->statusList, $story->status);?>'>
<span class="story-status-<?php echo $story->status?>">
<span class="label label-dot"></span>
<span class='status-text'><?php echo zget($lang->story->statusList, $story->status);?></span>
</span>
</td>
<?php if($longBlock):?>
<td class='c-stage'>
<span class='story-stage-<?php echo $story->stage?>'>
+2 -2
View File
@@ -21,7 +21,7 @@
<th class='c-estimate'><?php echo $lang->task->estimateAB;?></th>
<th class='c-deadline'><?php echo $lang->task->deadline;?></th>
<?php endif;?>
<th class='c-status'><?php echo $lang->statusAB;?></th>
<th class='c-status text-center'><?php echo $lang->statusAB;?></th>
</tr>
</thead>
<tbody>
@@ -35,7 +35,7 @@
<td class='c-pri'><span class='label-pri label-pri-<?php echo $task->pri;?>'><?php echo zget($lang->task->priList, $task->pri, $task->pri)?></span></td>
<td class='c-name' style='color: <?php echo $task->color?>' title='<?php echo $task->name?>'><?php echo $task->name?></td>
<?php if($longBlock):?>
<td class='c-estimate'><?php echo $task->estimate?></td>
<td class='c-estimate text-center'><?php echo $task->estimate?></td>
<td class='c-deadline'><?php if(substr($task->deadline, 0, 4) > 0) echo $task->deadline;?></td>
<?php endif;?>
<td class='c-status' title='<?php echo zget($lang->task->statusList, $task->status)?>'>
+20 -12
View File
@@ -13,13 +13,17 @@
<div class='panel-body has-table'>
<table class='table table-borderless table-hover table-fixed-head block-testtask'>
<thead>
<tr>
<th width='30'><?php echo $lang->idAB?></th>
<th width='80'><?php echo $lang->testtask->product;?></th>
<th width='80'> <?php echo $lang->testtask->name;?></th>
<th width='80'><?php echo $lang->testtask->project . '/' . $lang->testtask->build;?></th>
<th width='50'><?php echo $lang->testtask->begin;?></th>
<th width='50'><?php echo $lang->testtask->end;?></th>
<tr class='text-center'>
<?php if($longBlock):?>
<th class='w-id'><?php echo $lang->idAB?></th>
<th class='text-left'><?php echo $lang->testtask->product;?></th>
<?php endif;?>
<th class='text-left'><?php echo $lang->testtask->name;?></th>
<?php if($longBlock):?>
<th class='text-left'><?php echo $lang->testtask->project . '/' . $lang->testtask->build;?></th>
<?php endif;?>
<th class='w-date'><?php echo $lang->testtask->begin;?></th>
<th class='w-date'><?php echo $lang->testtask->end;?></th>
</tr>
</thead>
<tbody>
@@ -28,11 +32,15 @@
$appid = isset($_GET['entry']) ? "class='app-btn' data-id='{$this->get->entry}'" : '';
$viewLink = $this->createLink('testtask', 'view', "testtaskID={$testtask->id}");
?>
<tr data-url='<?php echo empty($sso) ? $viewLink : $sso . $sign . 'referer=' . base64_encode($viewLink); ?>' <?php echo $appid?>>
<td class='text-center'><?php echo $testtask->id;?></td>
<td title='<?php echo $testtask->productName?>'><?php echo $testtask->productName?></td>
<td title='<?php echo $testtask->name?>'><?php echo $testtask->name?></td>
<td class='text-center' title='<?php echo $testtask->projectName . '/' . $testtask->buildName?>'><?php echo $testtask->projectName . '/' . $testtask->buildName?></td>
<tr class='text-center' data-url='<?php echo empty($sso) ? $viewLink : $sso . $sign . 'referer=' . base64_encode($viewLink); ?>' <?php echo $appid?>>
<?php if($longBlock):?>
<td><?php echo $testtask->id;?></td>
<td class='text-left' title='<?php echo $testtask->productName?>'><?php echo $testtask->productName?></td>
<?php endif;?>
<td class='text-left' title='<?php echo $testtask->name?>'><?php echo $testtask->name?></td>
<?php if($longBlock):?>
<td class='text-left' title='<?php echo $testtask->projectName . '/' . $testtask->buildName?>'><?php echo $testtask->projectName . '/' . $testtask->buildName?></td>
<?php endif;?>
<td><?php echo $testtask->begin?></td>
<td><?php echo $testtask->end?></td>
</tr>
-4
View File
@@ -1,7 +1,3 @@
.ke-toolbar .ke-outline[data-name='savetemplate'] {display: none}
#modulemenu .nav #dropMenu #searchResult .closed{text-decoration:none;}
.nav #moreMenus{cursor: pointer;}
.input-group .control-product + .chosen-container-single .chosen-single {border-radius: 2px 0 0 2px; border-right-width: 0; padding-right: 1px;}
.input-group .control-product + .chosen-container-active .chosen-single {border-right-width: 1px; padding-right: 0;}
.input-group .control-branch + .chosen-container-single .chosen-single {border-radius: 0 2px 2px 0;}
+2 -1
View File
@@ -35,4 +35,5 @@
#branch {border-left-width: 0;}
.input-group-addon.w-90px{min-width:90px;}
.input-group-addon.w-90px{min-width:90px;}
.input-group .input-group-btn .btn{padding: 6px 12px;}
-1
View File
@@ -193,7 +193,6 @@ function loadProductModules(productID)
$('#moduleIdBox').load(link, function()
{
$(this).find('select').chosen(defaultChosenOptions)
if(typeof(bugModule) == 'string') $('#moduleIdBox').prepend("<span class='input-group-addon'>" + bugModule + "</span>")
});
}
+2
View File
@@ -129,6 +129,8 @@ $lang->bug->resolvedByMeAB = 'Resolved By Me';
$lang->bug->ditto = 'Ditto';
$lang->bug->dittoNotice = 'This bug is not linked to the same product as the last one!';
$lang->bug->noAssigned = 'Not Assigned';
$lang->bug->noBug = 'No BUG. You could ';
$lang->bug->noModule = '<div>You have no modules</div><div>Manage now</div>';
/* 页面标签。*/
$lang->bug->lblAssignedTo = 'Assignee';
+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 = '当前指派';
+14 -3
View File
@@ -2398,9 +2398,18 @@ class bugModel extends model
if($col->show)
{
$class = "c-$id";
if($id == 'status') $class .= ' bug-' . $bug->status;
if($id == 'title') $class .= ' text-left';
$title = '';
if($id == 'id') $class .= ' cell-id';
if($id == 'status')
{
$class .= ' bug-' . $bug->status;
$title = "title='" . zget($this->lang->bug->statusList, $bug->status) . "'";
}
if($id == 'title')
{
$class .= ' text-left';
$title = "title='{$bug->title}";
}
if($id == 'assignedTo')
{
$class .= ' has-btn text-left';
@@ -2408,7 +2417,7 @@ class bugModel extends model
}
if($id == 'deadline' && isset($bug->delay)) $class .= ' delayed';
echo "<td class='" . $class . "'" . ($id=='title' ? " title='{$bug->title}'" : '') . ">";
echo "<td class='" . $class . "' $title>";
switch($id)
{
case 'id':
@@ -2463,7 +2472,9 @@ class bugModel extends model
echo zget($this->lang->bug->typeList, $bug->type);
break;
case 'status':
echo "<span class='bug-status-{$bug->status}'><span class='label label-dot'></span><span class='status-text'>";
echo zget($this->lang->bug->statusList, $bug->status);
echo '</span></span>';
break;
case 'activatedCount':
echo $bug->activatedCount;
+11 -8
View File
@@ -11,11 +11,6 @@
*/
?>
<?php include '../../common/view/header.html.php';?>
<?php if(empty($bugs)):?>
<div class="table-empty-tip">
<p><span class="text-muted"><?php echo $lang->bug->noBug;?></span> <?php common::printLink('bug', 'create', "productID={$productID}", "<i class='icon icon-plus'> </i>" . $lang->bug->create, '', "class='btn btn-info'");?></p>
</div>
<?php else:?>
<?php
include '../../common/view/datatable.fix.html.php';
js::set('browseType', $browseType);
@@ -182,6 +177,11 @@ $currentBrowseType = isset($lang->bug->mySelects[$browseType]) && in_array($brow
<div id="mainContent" class="main-row">
<div class="side-col" id="sidebar">
<div class="cell">
<?php if(!$moduleTree):?>
<hr class="space">
<div class="text-center text-muted"><?php echo $lang->bug->noModule;?></div>
<hr class="space">
<?php endif;?>
<?php echo $moduleTree;?>
<div class="text-center">
<?php common::printLink('tree', 'browse', "productID=$productID&view=bug", $lang->tree->manage, '', "class='btn btn-info btn-wide'");?>
@@ -229,10 +229,10 @@ $currentBrowseType = isset($lang->bug->mySelects[$browseType]) && in_array($brow
<?php endforeach;?>
</tbody>
</table>
<?php if(!empty($bugs)):?>
<div class='table-footer'>
<div class="checkbox-primary check-all"><label><?php echo $lang->selectAll?></label></div>
<div class="table-actions btn-toolbar">
<?php if(!empty($bugs)):?>
<div class='btn-group dropup'>
<?php
$actionLink = $this->createLink('bug', 'batchEdit', "productID=$productID&branch=$branch");
@@ -361,10 +361,14 @@ $currentBrowseType = isset($lang->bug->mySelects[$browseType]) && in_array($brow
?>
</ul>
</div>
<?php endif;?>
</div>
<?php $pager->show('right', 'pagerjs');?>
</div>
<?php elseif(common::hasPriv('bug', 'create')):?>
<div class="table-empty-tip">
<p><span class="text-muted"><?php echo $lang->bug->noBug;?></span> <?php common::printLink('bug', 'create', "productID={$productID}", "<i class='icon icon-plus'> </i>" . $lang->bug->create, '', "class='btn btn-info'");?></p>
</div>
<?php endif;?>
</form>
</div>
</div>
@@ -392,5 +396,4 @@ $(function(){$('#modulemenu .nav li:last').after("<li class='right'><a style='fo
#querybox #searchform{border-bottom: 1px solid #ddd; margin-bottom: 20px;}
</style>
<?php endif;?>
<?php endif;?>
<?php include '../../common/view/footer.html.php';?>
+103 -137
View File
@@ -35,19 +35,21 @@ js::set('confirmDeleteTemplate', $lang->bug->confirmDeleteTemplate);
<table class="table table-form">
<tbody>
<tr>
<th class='w-110px'><?php echo $lang->bug->product;?></th>
<td class='w-p45-f'>
<th><?php echo $lang->bug->product;?></th>
<td>
<div class='input-group'>
<?php echo html::select('product', $products, $productID, "onchange='loadAll(this.value);' class='form-control chosen control-product' autocomplete='off'");?>
<?php if($this->session->currentProductType != 'normal'):?>
<span class='input-group-addon fix-border fix-padding'></span>
<?php echo html::select('branch', $branches, $branch, "onchange='loadBranch()' class='form-control chosen control-branch' style='width:120px'");?>
<span class='input-group-addon'></span>
<?php echo html::select('branch', $branches, $branch, "onchange='loadBranch()' class='form-control chosen control-branch'");?>
<?php endif;?>
</div>
</td>
</tr>
<tr>
<th><?php echo $lang->bug->module;?></th>
<td>
<div class='input-group' id='moduleIdBox'>
<span class="input-group-addon w-90px"><?php echo $lang->bug->module?></span>
<?php
echo html::select('module', $moduleOptionMenu, $moduleID, "onchange='loadModuleRelated()' class='form-control chosen'");
if(count($moduleOptionMenu) == 1)
@@ -63,41 +65,19 @@ js::set('confirmDeleteTemplate', $lang->bug->confirmDeleteTemplate);
</td>
</tr>
<?php $showProject = (strpos(",$showFields,", ',project,') !== false && $this->config->global->flow != 'onlyTest');?>
<?php if($showProject):?>
<tr>
<th><?php echo ($showProject) ? $lang->bug->project : $lang->bug->type;?></th>
<?php if(!$showProject):?>
<?php $showOS = strpos(",$showFields,", ',os,') !== false;?>
<?php $showBrowser = strpos(",$showFields,", ',browser,') !== false;?>
<td>
<div class='input-group' id='bugTypeInputGroup'>
<?php
/* Remove the unused types. */
unset($lang->bug->typeList['designchange']);
unset($lang->bug->typeList['newfeature']);
unset($lang->bug->typeList['trackthings']);
echo html::select('type', $lang->bug->typeList, $type, "class='form-control chosen'");
?>
<?php if($showOS):?>
<span class='input-group-addon fix-border'><?php echo $lang->bug->os?></span>
<?php echo html::select('os', $lang->bug->osList, $os, "class='form-control chosen'");?>
<?php endif;?>
<?php if($showBrowser):?>
<span class='input-group-addon fix-border'><?php echo $lang->bug->browser?></span>
<?php echo html::select('browser', $lang->bug->browserList, $browser, "class='form-control chosen'");?>
<?php endif;?>
</div>
</td>
<?php endif;?>
<?php if($showProject):?>
<th><?php echo $lang->bug->project;?></th>
<td><span id='projectIdBox'><?php echo html::select('project', $projects, $projectID, "class='form-control chosen' onchange='loadProjectRelated(this.value)' autocomplete='off'");?></span></td>
<?php endif;?>
</tr>
<?php endif;?>
<tr>
<th><?php echo $lang->bug->openedBuild?></th>
<td>
<div class='input-group'>
<span class='input-group-addon w-90px'><?php echo $lang->bug->openedBuild?></span>
<span id='buildBox'><?php echo html::select('openedBuild[]', $builds, $buildID, "size=4 multiple=multiple class='chosen form-control'");?></span>
<div class='input-group' id='buildBox'><?php echo html::select('openedBuild[]', $builds, $buildID, "size=4 multiple=multiple class='chosen form-control'");?></div>
<span class='input-group-addon fix-border' id='buildBoxActions'></span>
<span class='input-group-btn'><?php echo html::commonButton($lang->bug->allBuilds, "class='btn btn-default' data-toggle='tooltip' onclick='loadAllBuilds()'")?></span>
<div class='input-group-btn'><?php echo html::commonButton($lang->bug->allBuilds, "class='btn btn-default' data-toggle='tooltip' onclick='loadAllBuilds()'")?></div>
</div>
</td>
</tr>
@@ -105,20 +85,71 @@ js::set('confirmDeleteTemplate', $lang->bug->confirmDeleteTemplate);
<th><nobr><?php echo $lang->bug->lblAssignedTo;?></nobr></th>
<td>
<div class='input-group'>
<span id='assignedToBox'><?php echo html::select('assignedTo', $projectMembers, $assignedTo, "class='form-control chosen'");?></span>
<div class='input-group' id='assignedToBox'><?php echo html::select('assignedTo', $projectMembers, $assignedTo, "class='form-control chosen'");?></div>
<span class='input-group-btn'><?php echo html::commonButton($lang->bug->allUsers, "class='btn btn-default' onclick='loadAllUsers()' data-toggle='tooltip'");?></span>
</div>
</td>
<?php $showDeadline = strpos(",$showFields,", ',deadline,') !== false;?>
<?php if($showDeadline):?>
<td>
<div class='input-group'>
<span class='input-group-addon w-90px'><?php echo $lang->bug->deadline?></span>
<span><?php echo html::input('deadline', $deadline, "class='form-control form-date'");?></span>
</div>
</td>
<?php endif;?>
</tr>
<?php $showDeadline = strpos(",$showFields,", ',deadline,') !== false;?>
<?php if($showDeadline):?>
<tr>
<th><?php echo $lang->bug->deadline?></th>
<td><?php echo html::input('deadline', $deadline, "class='form-control form-date'");?></td>
</tr>
<?php endif;?>
<?php if(strpos(",$showFields,", ',severity,') !== false):?>
<tr>
<th><?php echo $lang->bug->severity;?></th>
<td>
<?php
$hasCustomSeverity = false;
foreach($lang->bug->severityList as $severityKey => $severityValue)
{
if(!empty($severityKey) and (string)$severityKey != (string)$severityValue)
{
$hasCustomSeverity = true;
break;
}
}
?>
<?php if($hasCustomSeverity):?>
<?php echo html::select('severity', (array)$lang->bug->severityList, $severity, "class='form-control chosen'");?>
<?php else: ?>
<?php echo html::select('severity', (array)$lang->bug->severityList, $severity, "class='form-control' data-provide='labelSelector' data-label-class='label-severity'");?>
<?php endif; ?>
</td>
</tr>
<?php endif;?>
<?php if(strpos(",$showFields,", ',pri,') !== false):?>
<tr>
<th><?php echo $lang->bug->pri;?></th>
<td>
<?php
$hasCustomPri = false;
foreach($lang->bug->priList as $priKey => $priValue)
{
if(!empty($priKey) and (string)$priKey != (string)$priValue)
{
$hasCustomPri = true;
break;
}
}
$priList = $lang->bug->priList;
if(end($priList))
{
unset($priList[0]);
$priList[0] = '';
}
?>
<?php if($hasCustomPri):?>
<?php echo html::select('pri', (array)$priList, $pri, "class='form-control chosen'");?>
<?php else: ?>
<?php echo html::select('pri', (array)$priList, $pri, "class='form-control' data-provide='labelSelector'");?>
<?php endif; ?>
</td>
</tr>
<?php endif;?>
<?php if($this->config->global->flow != 'onlyTest' && $showProject):?>
<?php $showOS = strpos(",$showFields,", ',os,') !== false;?>
<?php $showBrowser = strpos(",$showFields,", ',browser,') !== false;?>
@@ -148,64 +179,15 @@ js::set('confirmDeleteTemplate', $lang->bug->confirmDeleteTemplate);
<tr>
<th><?php echo $lang->bug->title;?></th>
<td colspan='2'>
<div class='input-group'>
<input type='hidden' id='color' name='color' data-provide='colorpicker' data-wrapper='input-group-btn' data-pull-menu-right='false' data-btn-tip='<?php echo $lang->bug->colorTag ?>' data-update-text='#title' value='<?php echo $color;?>'>
<?php echo html::input('title', $bugTitle, "class='form-control'");?>
<?php $showSeverity = strpos(",$showFields,", ',severity,') !== false;?>
<?php $showPri = strpos(",$showFields,", ',pri,') !== false;?>
<?php if($showSeverity or $showPri):?>
<?php $widthClass = (!$showSeverity or !$showPri) ? 'w-100px' : 'w-230px';?>
<?php if($showSeverity):?>
<span class='input-group-addon fix-border'><?php echo $lang->bug->severity;?></span>
<?php
$hasCustomSeverity = false;
foreach($lang->bug->severityList as $severityKey => $severityValue)
{
if(!empty($severityKey) and (string)$severityKey != (string)$severityValue)
{
$hasCustomSeverity = true;
break;
}
}
?>
<?php if($hasCustomSeverity):?>
<?php echo html::select('severity', (array)$lang->bug->severityList, $severity, "class='form-control minw-80px chosen'");?>
<?php else: ?>
<div class='input-group-btn dropdown-pris' data-prefix='severity'>
<button type='button' class='btn dropdown-toggle br-0' data-toggle='dropdown'>
<span class='pri-text'></span> &nbsp;<span class='caret'></span>
</button>
<ul class='dropdown-menu pull-right'></ul>
<?php echo html::select('severity', (array)$lang->bug->severityList, $severity, "class='hide'");?>
</div>
<?php endif; ?>
<?php endif;?>
<?php if($showPri):?>
<span class='input-group-addon fix-border'><?php echo $lang->bug->pri;?></span>
<?php
$hasCustomPri = false;
foreach($lang->bug->priList as $priKey => $priValue)
{
if(!empty($priKey) and (string)$priKey != (string)$priValue)
{
$hasCustomPri = true;
break;
}
}
?>
<?php if($hasCustomPri):?>
<?php echo html::select('pri', (array)$lang->bug->priList, $pri, "class='form-control minw-80px chosen'");?>
<?php else: ?>
<div class='input-group-btn dropdown-pris'>
<button type='button' class='btn dropdown-toggle br-0' data-toggle='dropdown'>
<span class='pri-text'></span> &nbsp;<span class='caret'></span>
</button>
<ul class='dropdown-menu pull-right'></ul>
<?php echo html::select('pri', $lang->bug->priList, $pri, "class='hide'");?>
</div>
<?php endif;?>
<?php endif;?>
<?php endif;?>
<div class="input-control has-icon-right">
<?php echo html::input('title', $bugTitle, "class='form-control' autocomplete='off' required");?>
<div class="colorpicker">
<button type="button" class="btn btn-link dropdown-toggle" data-toggle="dropdown"><span class="cp-title"></span><span class="color-bar"></span><i class="ic"></i></button>
<ul class="dropdown-menu clearfix">
<li class="heading"><?php echo $lang->story->colorTag;?><i class="icon icon-close"></i></li>
</ul>
<input type="hidden" class="colorpicker" id="color" name="color" value="" data-icon="color" data-wrapper="input-control-icon-right" data-update-color="#title" data-provide="colorpicker">
</div>
</div>
</td>
</tr>
@@ -230,36 +212,26 @@ js::set('confirmDeleteTemplate', $lang->bug->confirmDeleteTemplate);
$showStory = strpos(",$showFields,", ',story,') !== false;
$showTask = strpos(",$showFields,", ',task,') !== false;
?>
<?php if(($showStory or $showTask) and $this->config->global->flow != 'onlyTest'):?>
<?php if($showStory and $this->config->global->flow != 'onlyTest'):?>
<tr>
<th><?php echo ($showStory) ? $lang->bug->story : $lang->bug->task;?></th>
<?php if($showStory):?>
<td>
<span id='storyIdBox'><?php echo html::select('story', empty($stories) ? '' : $stories, $storyID, "class='form-control chosen'");?></span>
</td>
<?php endif;?>
<?php if($showTask):?>
<td>
<div class='input-group'>
<?php if($showStory):?>
<span class='input-group-addon w-90px'><?php echo $lang->bug->task?></span>
<?php endif;?>
<span id='taskIdBox'> <?php echo html::select('task', '', $taskID, "class='form-control chosen'") . html::hidden('oldTaskID', $taskID);?></span>
</div>
</td>
<?php endif;?>
<th><?php echo $lang->bug->story;?></th>
<td colspan='2'><div id='storyIdBox' class='input-group'><?php echo html::select('story', empty($stories) ? '' : $stories, $storyID, "class='form-control chosen'");?></div></td>
</tr>
<?php endif;?>
<?php if($showTask and $this->config->global->flow != 'onlyTest'):?>
<tr>
<th><?php echo $lang->bug->task;?></th>
<td colspan='2'><div id='taskIdBox' class='input-group'> <?php echo html::select('task', '', $taskID, "class='form-control chosen'") . html::hidden('oldTaskID', $taskID);?></div></td>
</tr>
<?php endif;?>
<?php
$showMailto = strpos(",$showFields,", ',mailto,') !== false;
$showKeywords = strpos(",$showFields,", ',keywords,') !== false;
?>
<?php if($showMailto or $showKeywords):?>
<?php $colspan = ($showMailto and $showKeywords) ? '' : "colspan='2'";?>
<?php if($showMailto):?>
<tr>
<th><?php echo ($showMailto) ? $lang->bug->lblMailto : $lang->bug->keywords;?></th>
<?php if($showMailto):?>
<td>
<th><?php echo $lang->bug->lblMailto;?></th>
<td colspan='2'>
<div class='input-group' id='contactListGroup'>
<?php
echo html::select('mailto[]', $users, str_replace(' ', '', $mailto), "class='form-control chosen' multiple");
@@ -267,17 +239,12 @@ js::set('confirmDeleteTemplate', $lang->bug->confirmDeleteTemplate);
?>
</div>
</td>
<?php endif;?>
<?php if($showKeywords):?>
<td <?php echo $colspan?>>
<div class='input-group'>
<?php if($showMailto):?>
<span class='input-group-addon w-90px' id='keywordsAddonLabel'><?php echo $lang->bug->keywords;?></span>
<?php endif;?>
<?php echo html::input('keywords', $keywords, "class='form-control'");?>
</div>
</td>
<?php endif;?>
</tr>
<?php endif;?>
<?php if($showKeywords):?>
<tr>
<th><?php echo $lang->bug->keywords;?></th>
<td colspan='2'><?php echo html::input('keywords', $keywords, "class='form-control'");?></td>
</tr>
<?php endif;?>
<tr>
@@ -318,5 +285,4 @@ js::set('confirmDeleteTemplate', $lang->bug->confirmDeleteTemplate);
</div>
</div>
</div>
<?php js::set('bugModule', $lang->bug->module);?>
<?php include '../../common/view/footer.html.php';?>
+10 -7
View File
@@ -49,13 +49,16 @@ js::set('productID' , $bug->product);
</div>
</td>
<td>
<div class='input-group'>
<span id='resolvedBuildBox'><?php echo html::select('resolvedBuild', $builds, '', "class='form-control chosen'");?></span>
<?php if(common::hasPriv('build', 'create')):?>
<span id='newBuildBox' class='hidden'><?php echo html::input('buildName', '', "class='form-control' placeholder='{$lang->bug->placeholder->newBuildName}'");?></span>
<span class='input-group-addon'><label class="checkbox-inline"><input name="createBuild" value="1" id="createBuild" type="checkbox"> <?php echo $lang->bug->createBuild?></label></span>
<?php endif;?>
<span id='resolvedBuildBox'><?php echo html::select('resolvedBuild', $builds, '', "class='form-control chosen'");?></span>
<span id='newBuildBox' class='hidden'><?php echo html::input('buildName', '', "class='form-control' placeholder='{$lang->bug->placeholder->newBuildName}'");?></span>
</td>
<td>
<?php if(common::hasPriv('build', 'create')):?>
<div class='checkbox-primary'>
<input type='checkbox' id='createBuild' name='createBuild' value='1' />
<label for='createBuild'><?php echo $lang->bug->createBuild;?></label>
</div>
<?php endif;?>
</td>
</tr>
<tr>
@@ -72,7 +75,7 @@ js::set('productID' , $bug->product);
</tr>
<tr>
<th><?php echo $lang->comment;?></th>
<td colspan='2'><?php echo html::textarea('comment', '', "rows='6' class='form-control'");?></td>
<td colspan='3'><?php echo html::textarea('comment', '', "rows='6' class='form-control'");?></td>
</tr>
<tr>
<th></th><td colspan='2'><?php echo html::submitButton() . html::linkButton($lang->goback, $this->session->bugList);?></td>
-3
View File
@@ -657,9 +657,6 @@ if(isset($config->global->flow) and $config->global->flow == 'onlyTask')
unset($lang->product->menu);
unset($lang->product->menuOrder);
$lang->project->menu->task['subModule'] = 'task';
$lang->project->menu->task['alias'] = 'grouptask,importtask';
unset($lang->searchObjects['bug']);
unset($lang->searchObjects['story']);
unset($lang->searchObjects['product']);
-3
View File
@@ -657,9 +657,6 @@ if(isset($config->global->flow) and $config->global->flow == 'onlyTask')
unset($lang->product->menu);
unset($lang->product->menuOrder);
$lang->project->menu->task['subModule'] = 'task';
$lang->project->menu->task['alias'] = 'grouptask,importtask';
unset($lang->searchObjects['bug']);
unset($lang->searchObjects['story']);
unset($lang->searchObjects['product']);
-3
View File
@@ -657,9 +657,6 @@ if(isset($config->global->flow) and $config->global->flow == 'onlyTask')
unset($lang->product->menu);
unset($lang->product->menuOrder);
$lang->project->menu->task['subModule'] = 'task';
$lang->project->menu->task['alias'] = 'grouptask,importtask';
unset($lang->searchObjects['bug']);
unset($lang->searchObjects['story']);
unset($lang->searchObjects['product']);
+1
View File
@@ -73,6 +73,7 @@ $lang->product->branch = '所屬%s';
$lang->product->qa = '測試';
$lang->product->release = '發佈';
$lang->product->latestDynamic = '最新動態';
$lang->product->plan = '計劃';
$lang->product->iteration = '版本迭代';
$lang->product->iterationInfo = '迭代 %s 次';
$lang->product->iterationView = '查看詳情';
+12 -2
View File
@@ -40,9 +40,19 @@
<td><?php echo $project->code;?></td>
<td><?php echo $project->end;?></td>
<?php if(isset($project->delay)):?>
<td class='status-delay'><?php echo $lang->project->delayed;?></td>
<td class='c-status' title='<?php echo $lang->project->delayed;?>'>
<span class="project-status-delayed">
<span class="label label-dot"></span>
<span class='status-text'><?php echo $lang->project->delayed;?></span>
</span>
</td>
<?php else:?>
<td class='status-<?php echo $project->status?>'><?php echo $lang->project->statusList[$project->status];?></td>
<td class='c-status' title='<?php echo zget($lang->project->statusList, $project->status);?>'>
<span class="project-status-<?php echo $project->status?>">
<span class="label label-dot"></span>
<span class='status-text'><?php echo zget($lang->project->statusList, $project->status);?></span>
</span>
</td>
<?php endif;?>
<td><?php echo $project->hours->totalEstimate;?></td>
<td><?php echo $project->hours->totalConsumed;?></td>
+12 -2
View File
@@ -75,9 +75,19 @@
<td><?php echo $users[$project->PM];?></td>
<td><?php echo $project->end;?></td>
<?php if(isset($project->delay)):?>
<td><span class='status-delay'><span class="label label-dot"></span> <?php echo $lang->project->delayed;?></span></td>
<td class='c-status' title='<?php echo $lang->project->delayed;?>'>
<span class="project-status-delayed">
<span class="label label-dot"></span>
<span class='status-text'><?php echo $lang->project->delayed;?></span>
</span>
</td>
<?php else:?>
<td><span class='status-<?php echo $project->status?>'><span class="label label-dot"></span> <?php echo $lang->project->statusList[$project->status];?></span></td>
<td class='c-status' title='<?php echo zget($lang->project->statusList, $project->status);?>'>
<span class="project-status-<?php echo $project->status?>">
<span class="label label-dot"></span>
<span class='status-text'><?php echo zget($lang->project->statusList, $project->status);?></span>
</span>
</td>
<?php endif;?>
<td><?php echo $project->hours->totalEstimate;?></td>
<td><?php echo $project->hours->totalConsumed;?></td>
+6 -1
View File
@@ -141,7 +141,12 @@
<td><?php echo $users[$story->openedBy];?></td>
<td><?php echo $users[$story->assignedTo];?></td>
<td><?php echo $story->estimate;?></td>
<td class='story-<?php echo $story->status;?>'><?php echo zget($lang->story->statusList, $story->status);?></td>
<td title='<?php echo zget($lang->story->statusList, $story->status);?>'>
<span class='story-status-<?php echo $story->status;?>'>
<span class='label label-dot'></span>
<span class='status-text'><?php echo zget($lang->story->statusList, $story->status);?></span>
</span>
</td>
<td><?php echo $lang->story->stageList[$story->stage];?></td>
<td class='linkbox'>
<?php
+6 -1
View File
@@ -78,7 +78,12 @@
<td><?php echo $users[$task->owner];?></td>
<td><?php echo $task->begin?></td>
<td><?php echo $task->end?></td>
<td class='status-<?php echo $task->status?>'><?php echo $lang->testtask->statusList[$task->status];?></td>
<td title='<?php echo $lang->testtask->statusList[$task->status];?>'>
<span class='status-<?php echo $task->status?>'>
<span class='label label-dot'></span>
<span class='status-text'><?php echo $lang->testtask->statusList[$task->status];?></span>
</span>
</td>
<td class='c-actions'>
<div class='more'>
<?php
+14 -13
View File
@@ -33,9 +33,9 @@
<?php if($product->type != 'normal'):?>
<th class='text-center w-100px'><?php echo $lang->product->branch;?></th>
<?php endif;?>
<th class='text-center w-100px'><?php echo $lang->release->date;?></th>
<th class='text-center w-100px'><?php echo $lang->release->status;?></th>
<th class='c-actions-3'><?php echo $lang->actions;?></th>
<th class='c-date text-center'><?php echo $lang->release->date;?></th>
<th class='text-center w-90px'><?php echo $lang->release->status;?></th>
<th class='c-actions-4 text-center'><?php echo $lang->actions;?></th>
</tr>
</thead>
<tbody>
@@ -48,17 +48,13 @@
<td class='text-center'><?php echo $branches[$release->branch];?></td>
<?php endif;?>
<td class='text-center'><?php echo $release->date;?></td>
<td class='text-center'><?php echo $lang->release->statusList[$release->status];?></td>
<td class='c-status' title='<?php echo zget($lang->release->statusList, $release->status);?>'>
<span class="status-<?php echo $release->status?>">
<span class="label label-dot"></span>
<span class='status-text'><?php echo zget($lang->release->statusList, $release->status);?></span>
</span>
</td>
<td class='c-actions'>
<div class='more'>
<?php
if(common::hasPriv('release', 'delete', $release))
{
$deleteURL = $this->createLink('release', 'delete', "releaseID=$release->id&confirm=yes");
echo html::a("javascript:ajaxDelete(\"$deleteURL\",\"releaseList\",confirmDelete)", '<i class="icon-trash"></i>', '', "class='btn' title='{$lang->release->delete}'");
}
?>
</div>
<?php
if(common::hasPriv('release', 'linkStory')) echo html::a(inlink('view', "releaseID=$release->id&type=story&link=true"), '<i class="icon-link"></i> ', '', "class='btn' title='{$lang->release->linkStory}'");
if(common::hasPriv('release', 'linkBug') and $this->config->global->flow != 'onlyStory') echo html::a(inlink('view', "releaseID=$release->id&type=bug&link=true"), '<i class="icon-bug"></i> ', '', "class='btn' title='{$lang->release->linkBug}'");
@@ -68,6 +64,11 @@
echo html::a(inlink('changeStatus', "releaseID=$release->id&status=$changedStatus"), '<i class="icon-' . ($release->status == 'normal' ? 'pause' : 'play') . '"></i> ', 'hiddenwin', "class='btn' title='{$lang->release->changeStatusList[$changedStatus]}'");
}
common::printIcon('release', 'edit', "release=$release->id", $release, 'list');
if(common::hasPriv('release', 'delete', $release))
{
$deleteURL = $this->createLink('release', 'delete', "releaseID=$release->id&confirm=yes");
echo html::a("javascript:ajaxDelete(\"$deleteURL\",\"releaseList\",confirmDelete)", '<i class="icon-trash"></i>', '', "class='btn' title='{$lang->release->delete}'");
}
?>
</td>
</tr>
+1 -1
View File
@@ -181,7 +181,7 @@ $lang->story->lblReview = '评审需求';
$lang->story->lblActivate = '激活需求';
$lang->story->lblClose = '关闭需求';
$lang->story->checkAffection = '检查影响';
$lang->story->checkAffection = '影响范围';
$lang->story->affectedProjects = '影响的' . $lang->projectCommon;
$lang->story->affectedBugs = '影响的Bug';
$lang->story->affectedCases = '影响的用例';
+1 -1
View File
@@ -181,7 +181,7 @@ $lang->story->lblReview = '評審需求';
$lang->story->lblActivate = '激活需求';
$lang->story->lblClose = '關閉需求';
$lang->story->checkAffection = '檢查影響';
$lang->story->checkAffection = '影響範圍';
$lang->story->affectedProjects = '影響的' . $lang->projectCommon;
$lang->story->affectedBugs = '影響的Bug';
$lang->story->affectedCases = '影響的用例';
+2
View File
@@ -188,6 +188,8 @@ $lang->testcase->noFunction = 'Iconv and mb_convert_encoding is not found.
$lang->testcase->noRequire = "Row %s has“%s”which is a required field and it should not be blank.";
$lang->testcase->noLibrary = "No library exists. Please create one first.";
$lang->testcase->mustChooseResult = 'Review result is required.';
$lang->testcase->noCase = 'No Case. You could ';
$lang->testcase->noModule = '<div>You have no modules</div><div>Manage now</div>';
$lang->testcase->searchStories = 'Enter to searcu Story';
$lang->testcase->selectLib = 'Select Library';
+2
View File
@@ -188,6 +188,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 = '请选择库';
+16 -5
View File
@@ -1289,19 +1289,28 @@ class testcaseModel extends model
if($col->show)
{
$class = '';
if($id == 'status') $class .= $case->status;
if($id == 'title') $class .= ' text-left';
if($id == 'actions')$class .= ' c-actions';
$title = '';
if($id == 'title')
{
$class .= ' text-left';
$title = "title='{$case->title}'";
}
if($id == 'status')
{
$class .= $case->status;
$title = "title='" . zget($this->lang->testcase->statusList, $case->status) . "'";
}
if($id == 'actions') $class .= ' c-actions';
if($id == 'lastRunResult') $class .= $case->lastRunResult;
echo "<td class='" . $class . "'" . ($id=='title' ? " title='{$case->title}'":'') . ">";
echo "<td class='{$class}' {$title}>";
switch($id)
{
case 'id':
echo $mode == 'table' ? html::checkbox('caseIDList', array($case->id => sprintf('%03d', $case->id))) : sprintf('%03d', $case->id);
break;
case 'pri':
echo "<span class='pri" . zget($this->lang->testcase->priList, $case->pri, $case->pri) . "'>";
echo "<span class='label-pri label-pri-" . $case->pri . "'>";
echo zget($this->lang->testcase->priList, $case->pri, $case->pri);
echo "</span>";
break;
@@ -1331,7 +1340,9 @@ class testcaseModel extends model
}
else
{
echo "<span class='status-{$case->status}'><span class='label label-dot'></span><span class='status-text'>";
echo $this->lang->testcase->statusList[$case->status];
echo '</span></span>';
}
break;
case 'story':
+9
View File
@@ -26,6 +26,11 @@ js::set('branch', $branch);
<div id="mainContent" class="main-row">
<div class='side-col' id='sidebar'>
<div class='cell'>
<?php if(!$moduleTree):?>
<hr class="space">
<div class="text-center text-muted"><?php echo $lang->testcase->noModule;?></div>
<hr class="space">
<?php endif;?>
<?php echo $moduleTree;?>
<div class='text-center'>
<?php common::printLink('tree', 'browse', "productID=$productID&view=case", $lang->tree->manage, '', "class='btn btn-info btn-wide'");?>
@@ -186,6 +191,10 @@ js::set('branch', $branch);
</div>
<?php $pager->show('right', 'pagerjs');?>
</div>
<?php elseif(common::hasPriv('testcase', 'create')):?>
<div class="table-empty-tip">
<p><span class="text-muted"><?php echo $lang->testcase->noCase;?></span> <?php common::printLink('testcase', 'create', "productID={$productID}", "<i class='icon icon-plus'> </i>" . $lang->testcase->create, '', "class='btn btn-info'");?></p>
</div>
<?php endif;?>
</form>
</div>
+2
View File
@@ -71,7 +71,9 @@
}
else
{
echo "<span class='status-{$case->status}'><span class='label label-dot'></span><span class='status-text'>";
echo $lang->testcase->statusList[$case->status];
echo '</span></span>';
}
?>
</td>
+12 -14
View File
@@ -14,14 +14,14 @@
<?php include '../../common/view/chosen.html.php';?>
<?php include '../../common/view/kindeditor.html.php';?>
<?php include '../../common/view/datepicker.html.php';?>
<div id='titlebar'>
<div class='heading'>
<span class='prefix'><?php echo html::icon($lang->icons['testcase']);?> <strong><?php echo $case->id;?></strong></span>
<strong><?php echo html::a($this->createLink('case', 'view', "caseID=$case->id"), $case->title);?></strong>
<small><?php echo html::icon($lang->icons['review']) . ' ' . $lang->testcase->review;?></small>
<div id='mainContent' class='main-content'>
<div class='main-header'>
<h2>
<span class='label label-id'><?php echo $case->id;?></span>
<?php echo html::a($this->createLink('case', 'view', "caseID=$case->id"), $case->title);?>
</h2>
</div>
</div>
<form method='post' target='hiddenwin' class='form-condensed'>
<form method='post' target='hiddenwin'>
<table class='table table-form'>
<tr>
<th class='w-80px'><?php echo $lang->testcase->reviewedDateAB;?></th>
@@ -40,13 +40,11 @@
<td colspan='2'><?php echo html::textarea('comment', '', "rows='8' class='form-control'");?></td>
</tr>
<tr>
<td></td>
<td colspan='2'>
<?php echo html::submitButton();?>
</td>
<td colspan='3' class='text-center'><?php echo html::submitButton();?></td>
</tr>
</table>
</form>
<hr class='small'>
<div class='main'><?php include '../../common/view/action.html.php';?></div>
</form>
<hr class='small' />
<div class='main'><?php include '../../common/view/action.html.php';?></div>
</div>
<?php include '../../common/view/footer.lite.html.php';?>
+1 -1
View File
@@ -286,6 +286,7 @@
<?php
if(!$isLibCase)
{
echo "<div class='divider'></div>";
common::printIcon('testtask', 'runCase', "runID=$runID&caseID=$case->id&version=$case->currentVersion", $case, 'button', '', '', 'runCase', false, "data-width='95%'");
common::printIcon('testtask', 'results', "runID=$runID&caseID=$case->id&version=$case->version", $case, 'button', '', '', 'results', false, "data-width='95%'");
@@ -293,7 +294,6 @@
}
if($config->testcase->needReview or !empty($config->testcase->forceReview)) common::printIcon('testcase', 'review', "caseID=$case->id", $case, 'button', 'review', '', 'iframe');
?>
<div class='divider'></div>
<?php
common::printIcon('testcase', 'edit',"caseID=$case->id", $case);
if(!$isLibCase) common::printIcon('testcase', 'create', "productID=$case->product&branch=$case->branch&moduleID=$case->module&from=testcase&param=$case->id", $case, 'button', 'copy');
+58 -60
View File
@@ -12,68 +12,66 @@
?>
<?php include '../../common/view/header.html.php';?>
<?php $this->app->loadLang('testcase'); unset($this->lang->testcase->resultList['n/a']); ?>
<div id='titlebar'>
<div class='heading'>
<span class='prefix'><?php echo html::icon($lang->icons['testtask']);?></span>
<strong><small class='text-muted'><?php echo html::icon($lang->icons['batchRun']);?></small> <?php echo $lang->testtask->common . $lang->colon . $lang->testtask->batchRun;?></strong>
<div id='mainContent' class='main-content'>
<div class='main-header'>
<h2><?php echo $lang->testtask->common . $lang->colon . $lang->testtask->batchRun;?></h2>
</div>
<form method='post' target='hiddenwin'>
<table class='table table-fixed table-form table-bordered'>
<thead>
<tr>
<th class='w-id'> <?php echo $lang->idAB;?></th>
<th class='w-100px'><?php echo $lang->testcase->module;?></th>
<th class='w-200px'><?php echo $lang->testcase->title;?></th>
<th class='precondition w-60px'><?php echo $lang->testcase->precondition;?></th>
<th class='w-80px'><?php echo $lang->testcase->result?></th>
<th> <?php echo $lang->testcase->stepDesc . '/' . $lang->testcase->stepExpect?></th>
</tr>
</thead>
<?php foreach($caseIDList as $caseID):?>
<?php if(!$productID) $moduleOptionMenu = $this->loadModel('tree')->getOptionMenu($cases[$caseID]->product, $viewType = 'case', $startModuleID = 0);?>
<tr class='text-center'>
<td><?php echo $caseID . html::hidden("version[$caseID]", $cases[$caseID]->version)?></td>
<td class='text-left'><?php echo "<span title='" . $moduleOptionMenu[$cases[$caseID]->module] . "'>" . $moduleOptionMenu[$cases[$caseID]->module] . "</span>"?></td>
<td class='text-left wordwrap'><?php echo "<span title='{$cases[$caseID]->title}'>{$cases[$caseID]->title}</span>"?></td>
<td class='text-left precondition wordwrap'><?php echo "<span title='{$cases[$caseID]->precondition}'>{$cases[$caseID]->precondition}</span>"?></td>
<td><?php echo html::radio("results[$caseID]", $this->lang->testcase->resultList, 'pass', "onclick='showAction(this.value,\".action$caseID\")'", 'block')?></td>
<td>
<?php if(!empty($steps[$caseID])):?>
<table class='table table-fixed'>
<?php $stepId = $childId = 0;?>
<?php foreach($steps[$caseID] as $stepID => $step):?>
<?php
if($step->type == 'group' or $step->type == 'step')
{
$stepId ++;
$childId = 0;
}
$ID = $step->type == 'item' ? "{$stepId}.{$childId}" : $stepId;
$stepClass = $step->type == 'item' ? 'step-item' : 'step-group';
?>
<tr>
<td class='text-left w-p30' <?php if($step->type == 'group') echo "colspan='2'"?>><?php echo "<span title='$step->desc' class='$stepClass'>" . $ID . "、" . $step->desc . '</span>'?></td>
<?php if($step->type != 'group'):?>
<td class='text-left w-p30'><?php echo "<span title='$step->expect'>" . $lang->testcase->stepExpect . "" . $step->expect . '</span>'?></td>
<td class='w-80px hidden action<?php echo $caseID?>'><?php echo html::select("steps[$caseID][$stepID]", $lang->testcase->resultList, 'pass', "class='form-control'")?></td>
<td class='hidden action<?php echo $caseID?>'><?php echo html::input("reals[$caseID][$stepID]", '', "class='form-control'");?></td>
<?php endif;?>
</tr>
<?php $childId ++;?>
<?php endforeach?>
</table>
<?php else:?>
<span class='hidden action<?php echo $caseID?>'><?php echo html::input("reals[$caseID][]", '', "class='form-control'");?></span>
<?php endif;?>
</td>
</tr>
<?php endforeach;?>
<tr><td colspan='6' class='text-center'><?php echo html::submitButton();?></td></tr>
</table>
</form>
</div>
<form class='form-condensed' method='post' target='hiddenwin'>
<table class='table table-fixed table-form table-bordered'>
<thead>
<tr>
<th class='w-id'> <?php echo $lang->idAB;?></th>
<th class='w-100px'><?php echo $lang->testcase->module;?></th>
<th width='200'> <?php echo $lang->testcase->title;?></th>
<th class='precondition' width='60'><?php echo $lang->testcase->precondition;?></th>
<th width='180'> <?php echo $lang->testcase->result?></th>
<th> <?php echo $lang->testcase->stepDesc . '/' . $lang->testcase->stepExpect?></th>
</tr>
</thead>
<?php foreach($caseIDList as $caseID):?>
<?php if(!$productID) $moduleOptionMenu = $this->loadModel('tree')->getOptionMenu($cases[$caseID]->product, $viewType = 'case', $startModuleID = 0);?>
<tr class='text-center'>
<td><?php echo $caseID . html::hidden("version[$caseID]", $cases[$caseID]->version)?></td>
<td class='text-left'><?php echo "<span title='" . $moduleOptionMenu[$cases[$caseID]->module] . "'>" . $moduleOptionMenu[$cases[$caseID]->module] . "</span>"?></td>
<td class='text-left wordwrap'><?php echo "<span title='{$cases[$caseID]->title}'>{$cases[$caseID]->title}</span>"?></td>
<td class='text-left precondition wordwrap'><?php echo "<span title='{$cases[$caseID]->precondition}'>{$cases[$caseID]->precondition}</span>"?></td>
<td><?php echo html::radio("results[$caseID]", $this->lang->testcase->resultList, 'pass', "onclick='showAction(this.value,\".action$caseID\")'", 'block')?></td>
<td>
<?php if(!empty($steps[$caseID])):?>
<table class='table table-fixed'>
<?php $stepId = $childId = 0;?>
<?php foreach($steps[$caseID] as $stepID => $step):?>
<?php
if($step->type == 'group' or $step->type == 'step')
{
$stepId ++;
$childId = 0;
}
$ID = $step->type == 'item' ? "{$stepId}.{$childId}" : $stepId;
$stepClass = $step->type == 'item' ? 'step-item' : 'step-group';
?>
<tr>
<td class='text-left w-p30' <?php if($step->type == 'group') echo "colspan='2'"?>><?php echo "<span title='$step->desc' class='$stepClass'>" . $ID . "、" . $step->desc . '</span>'?></td>
<?php if($step->type != 'group'):?>
<td class='text-left w-p30'><?php echo "<span title='$step->expect'>" . $lang->testcase->stepExpect . "" . $step->expect . '</span>'?></td>
<td class='w-80px hidden action<?php echo $caseID?>'><?php echo html::select("steps[$caseID][$stepID]", $lang->testcase->resultList, 'pass', "class='form-control'")?></td>
<td class='hidden action<?php echo $caseID?>'><?php echo html::input("reals[$caseID][$stepID]", '', "class='form-control'");?></td>
<?php endif;?>
</tr>
<?php $childId ++;?>
<?php endforeach?>
</table>
<?php else:?>
<span class='hidden action<?php echo $caseID?>'><?php echo html::input("reals[$caseID][]", '', "class='form-control'");?></span>
<?php endif;?>
</td>
</tr>
<?php endforeach;?>
<tr><td colspan='6' class='text-center'><?php echo html::submitButton();?></td></tr>
</table>
</form>
<script type='text/javascript'>
<script>
function showAction(value, obj)
{
if(value == 'pass')
+6 -1
View File
@@ -80,7 +80,12 @@ $status = $this->session->testTaskVersionStatus;
<td><?php echo zget($users, $task->owner);?></td>
<td><?php echo $task->begin?></td>
<td><?php echo $task->end?></td>
<td class='status-<?php echo $task->status?>'><?php echo $lang->testtask->statusList[$task->status];?></td>
<td title='<?php echo $lang->testtask->statusList[$task->status];?>'>
<span class='status-<?php echo $task->status?>'>
<span class='label label-dot'></span>
<span class='status-text'><?php echo $lang->testtask->statusList[$task->status];?></span>
</span>
</td>
<td class='c-actions'>
<?php
if(common::hasPriv('testtask', 'delete', $task))