* merge sprint/244

This commit is contained in:
wangzemei
2022-09-28 09:13:55 +08:00
30 changed files with 157 additions and 95 deletions
+5 -5
View File
@@ -300,11 +300,11 @@ $config->bug->datatable->fieldList['openedBuild']['required'] = 'no';
$config->bug->datatable->fieldList['openedBuild']['control'] = 'multiple';
$config->bug->datatable->fieldList['openedBuild']['dataSource'] = array('module' => 'build', 'method' =>'getBuildPairs', 'params' => '$productID&$branch&noempty,noterminate,nodone,withbranch');
$config->bug->datatable->fieldList['assignedTo']['title'] = 'assignedToAB';
$config->bug->datatable->fieldList['assignedTo']['fixed'] = 'no';
$config->bug->datatable->fieldList['assignedTo']['width'] = '120';
$config->bug->datatable->fieldList['assignedTo']['required'] = 'no';
$config->bug->datatable->fieldList['assignedTo']['dataSource'] = array('module' => 'bug', 'method' =>'getProductMemberPairs', 'params' => '$productID&$branch');
$config->bug->datatable->fieldList['assignedTo']['title'] = 'assignedToAB';
$config->bug->datatable->fieldList['assignedTo']['fixed'] = 'no';
$config->bug->datatable->fieldList['assignedTo']['width'] = '120';
$config->bug->datatable->fieldList['assignedTo']['required'] = 'no';
$config->bug->datatable->fieldList['assignedTo']['dataSource'] = array('module' => 'user', 'method' =>'getPairs', 'params' => 'noclosed|noletter');
$config->bug->datatable->fieldList['assignedDate']['title'] = 'assignedDate';
$config->bug->datatable->fieldList['assignedDate']['fixed'] = 'no';
+2
View File
@@ -2149,6 +2149,8 @@ EOD;
{
if(strpos($orderBy, 'priOrder') !== false) $select .= ", IF(`pri` = 0, {$this->config->maxPriValue}, `pri`) as priOrder";
if(strpos($orderBy, 'severityOrder') !== false) $select .= ", IF(`severity` = 0, {$this->config->maxPriValue}, `severity`) as severityOrder";
$queryCondition = str_replace('t4.status', 'status', $queryCondition);
$sql = $this->dao->select("*$select")->from($table)
->where($queryCondition)
->beginIF($orderBy != false)->orderBy($orderBy)->fi()
+24 -26
View File
@@ -50,7 +50,7 @@
?>
</nobr>
</td>
<td class='w-300px'>
<td class='w-500px'>
<?php
$maxOrder = 0;
foreach($sons as $sonDept)
@@ -174,39 +174,37 @@ $(function()
e.stopPropagation();
});
$("#dataForm").submit(function(e)
$("input[name*='depts']").change(function ()
{
var postDept = new Array();
var depts = new Array();
var depts = new Array();
var modifyData = $(this).val();
var changedInput = $(this);
$.each($('input[name*="depts[]"]'), function(index, value)
{
if($(this).val()) postDept.push($(this).val());
});
changedInput.wrap('<span>');
changedInput.closest('span').addClass('dataField');
$.each($('input[name*="depts[id"]'), function(index, value)
$('input[name^="depts"]').not($(this)).each(function()
{
if($(this).val()) depts.push($(this).val());
});
for(var i = 0; i < postDept.length; i++)
if(depts.indexOf(modifyData) > -1)
{
if(depts.indexOf(postDept[i]) > -1 || postDept[i] == postDept[i + 1])
{
if(confirm(repeatDepart))
{
var link = createLink('dept', 'manageChild');
break;
}
else
{
setTimeout(function()
{
$('#submit').removeAttr('disabled');
},10)
return false;
}
}
$('.dataField #depts\\[\\]').addClass('intro');
$('.intro').css({"margin" : "5px 0px 5px 0px", "display" : "inline", "width" : "50%"});
changedInput.after('<span style="padding-left: 15px;color: #1183fb" class="tips">' + repeatDepart + '</span>');
}
});
$("input[name*='depts']").focus(function ()
{
if($('.dataField').length)
{
$('.intro').removeAttr('style');
$('.intro').unwrap();
$('#depts\\[\\]').removeClass('intro');
$('.tips').remove();
}
});
});
+12
View File
@@ -629,6 +629,18 @@ class doc extends control
if($this->config->systemMode == 'classic' and $objectType == 'project') $objectType = 'execution';
$this->doc->delete(TABLE_DOC, $docID);
/* Delete doc files. */
$this->loadModel('file');
foreach($doc->files as $fileID => $file)
{
$file = $this->file->getById($fileID);
$this->dao->delete()->from(TABLE_FILE)->where('id')->eq($fileID)->exec();
$this->loadModel('action')->create($file->objectType, $file->objectID, 'deletedFile', '', $extra=$file->title);
$fileRecord = $this->dao->select('id')->from(TABLE_FILE)->where('pathname')->eq($file->pathname)->fetch();
if(empty($fileRecord)) @unlink($file->realPath);
}
/* if ajax request, send result. */
if($this->server->ajax)
{
+1 -1
View File
@@ -62,7 +62,7 @@ $(function()
if($(".createCustomLib").length == 1) $(".createCustomLib").click(); // Fix bug #15139.
if(!fromGlobal && textType.indexOf(docType) != -1)
if(!fromGlobal && textType.indexOf(docType) != -1 && from == 'doc')
{
var basicInfo = JSON.parse(sessionStorage.getItem('docBasicInfo'));
+1
View File
@@ -10,6 +10,7 @@
* @link http://www.zentao.net
*/
?>
<?php js::set('from', $from);?>
<?php if(strpos($config->doc->textTypes, $docType) !== false and $from == 'doc'):?>
<?php include 'createtexttype.html.php';?>
<?php else:?>
+2 -2
View File
@@ -467,7 +467,7 @@ $lang->execution->kanban = "Kanban";
$lang->execution->kanbanSetting = "Kanban Einstellung";
$lang->execution->setKanban = "Kanban Einstellung";
$lang->execution->resetKanban = "Einstellungen zurücksetzen";
$lang->execution->printKanban = "Kanban drucken";
$lang->execution->printKanban = "drucken Kanban";
$lang->execution->fullScreen = "Full Screen";
$lang->execution->bugList = "Bugs";
@@ -487,7 +487,7 @@ $lang->kanbanSetting->optionList['0'] = 'Verstecken';
$lang->kanbanSetting->optionList['1'] = 'Anzeigen';
$lang->printKanban = new stdclass();
$lang->printKanban->common = 'Kanban drucken';
$lang->printKanban->common = 'drucken Kanban';
$lang->printKanban->content = 'Inhanlt';
$lang->printKanban->print = 'Drucken';
+1 -1
View File
@@ -467,7 +467,7 @@ $lang->execution->kanban = "Kanban";
$lang->execution->kanbanSetting = "Settings";
$lang->execution->setKanban = "Set Kanban";
$lang->execution->resetKanban = "Reset";
$lang->execution->printKanban = "Print";
$lang->execution->printKanban = "Print Kanban";
$lang->execution->fullScreen = "Full Screen";
$lang->execution->bugList = "Bugs";
+1 -1
View File
@@ -467,7 +467,7 @@ $lang->execution->kanban = "Kanban";
$lang->execution->kanbanSetting = "Paramétrage";
$lang->execution->setKanban = "Paramétrage";
$lang->execution->resetKanban = "Réinitialiser";
$lang->execution->printKanban = "Impression";
$lang->execution->printKanban = "Imprimer Kanban";
$lang->execution->fullScreen = "Full Screen";
$lang->execution->bugList = "Bugs";
+1 -1
View File
@@ -487,7 +487,7 @@ $lang->kanbanSetting->optionList['0'] = '隐藏';
$lang->kanbanSetting->optionList['1'] = '显示';
$lang->printKanban = new stdclass();
$lang->printKanban->common = '看板打印';
$lang->printKanban->common = '打印看板';
$lang->printKanban->content = '内容';
$lang->printKanban->print = '打印';
+1 -1
View File
@@ -410,7 +410,7 @@ $lang->kanbanSetting->optionList['0'] = '隱藏';
$lang->kanbanSetting->optionList['1'] = '顯示';
$lang->printKanban = new stdclass();
$lang->printKanban->common = '看板打印';
$lang->printKanban->common = '打印看板';
$lang->printKanban->content = '內容';
$lang->printKanban->print = '打印';
+1 -2
View File
@@ -1507,6 +1507,7 @@ $(function()
$(window).on('resize', function(a)
{
adjustAddBtnPosition();
initRegionTabs();
});
resetLaneHeight();
@@ -1558,8 +1559,6 @@ $(function()
distance = 0;
radiusWidth = 10;
$(window).on('resize', initRegionTabs);
initRegionTabs();
$('.leftBtn').click(function()
{
+13 -2
View File
@@ -686,7 +686,7 @@ class mrModel extends model
}
$mergeResult = json_decode(commonModel::http($url, $MRObject));
if(isset($mergeResult->number)) $mergeResult->iid = $host->type == 'gitea' ? $mergeResult->number : $mergeResult->id;
if(isset($mergeResult->number)) $mergeResult->iid = $mergeResult->number;
if(isset($mergeResult->mergeable))
{
if($mergeResult->mergeable) $mergeResult->merge_status = 'can_be_merged';
@@ -867,7 +867,16 @@ class mrModel extends model
*/
public function apiGetMRCommits($hostID, $projectID, $MRID)
{
$url = sprintf($this->gitlab->getApiRoot($hostID), "/projects/$projectID/merge_requests/$MRID/commits");
$host = $this->loadModel('pipeline')->getByID($hostID);
if($host->type == 'gitlab')
{
$url = sprintf($this->gitlab->getApiRoot($hostID), "/projects/$projectID/merge_requests/$MRID/commits");
}
else
{
$url = sprintf($this->loadModel($host->type)->getApiRoot($hostID), "/repos/$projectID/pulls/$MRID/commits");
}
return json_decode(commonModel::http($url));
}
@@ -1797,6 +1806,8 @@ class mrModel extends model
/* Get commits by MR. */
$commits = $this->apiGetMRCommits($MR->hostID, $MR->targetProject, $MR->mriid);
if(empty($commits)) return true;
foreach($commits as $commit)
{
$objects = $this->repo->parseComment($commit->message);
+2 -2
View File
@@ -37,8 +37,8 @@ $lang->product->addWhitelist = 'Add Whitelist';
$lang->product->unbindWhitelist = 'Remove Whitelist';
$lang->product->track = 'View Stories Matrix';
$lang->product->checkedProducts = '%s products selected';
$lang->product->pageProducts = 'Total products: %s.';
$lang->product->pageLines = 'Total product lines: %s, Total products: %s.';
$lang->product->pageSummary = 'Total products: %s.';
$lang->product->lineSummary = 'Total product lines: %s, Total products: %s.';
$lang->product->indexAction = "All {$lang->productCommon}";
$lang->product->closeAction = "Close {$lang->productCommon}";
+2 -2
View File
@@ -37,8 +37,8 @@ $lang->product->addWhitelist = 'Add Whitelist';
$lang->product->unbindWhitelist = 'Unbind Whitelist';
$lang->product->track = 'View Stories Matrix';
$lang->product->checkedProducts = '%s products selected';
$lang->product->pageProducts = 'Total products: %s.';
$lang->product->pageLines = 'Total product lines: %s, Total products: %s.';
$lang->product->pageSummary = 'Total products: %s.';
$lang->product->lineSummary = 'Total product lines: %s, Total products: %s.';
$lang->product->indexAction = "All {$lang->productCommon}";
$lang->product->closeAction = "Close {$lang->productCommon}";
+2 -2
View File
@@ -37,8 +37,8 @@ $lang->product->addWhitelist = 'Add Whitelist';
$lang->product->unbindWhitelist = 'Remove Whitelist';
$lang->product->track = 'Consulter Stories Matrice';
$lang->product->checkedProducts = '%s produits s électionnés';
$lang->product->pageProducts = 'Total products: %s.';
$lang->product->pageLines = 'Total product lines: %s, Total products: %s.';
$lang->product->pageSummary = 'Total products: %s.';
$lang->product->lineSummary = 'Total product lines: %s, Total products: %s.';
$lang->product->indexAction = "All {$lang->productCommon}";
$lang->product->closeAction = "Fermer {$lang->productCommon}";
+2 -2
View File
@@ -37,8 +37,8 @@ $lang->product->addWhitelist = '添加白名单';
$lang->product->unbindWhitelist = '移除白名单';
$lang->product->track = "查看需求矩阵";
$lang->product->checkedProducts = '已选择%s项产品';
$lang->product->pageProducts = '本页共%s个产品。';
$lang->product->pageLines = '本页共%s个产品线,%s个产品。';
$lang->product->pageSummary = '本页共%s个产品。';
$lang->product->lineSummary = '本页共%s个产品线,%s个产品。';
$lang->product->indexAction = "所有{$lang->productCommon}仪表盘";
$lang->product->closeAction = "关闭{$lang->productCommon}";
+2 -2
View File
@@ -253,8 +253,8 @@
<?php if(!empty($product) and $canBatchEdit):?>
<div class="checkbox-primary check-all"><label><?php echo $lang->selectAll?></label></div>
<?php
$content = empty($productLines) ? sprintf($lang->product->pageProducts, count($productStats)) : sprintf($lang->product->pageLines, count($lineNames), count($productStats));
echo "<div id='productsCount' class='statistic'>$content</div>";
$summary = empty($productLines) ? sprintf($lang->product->pageSummary, count($productStats)) : sprintf($lang->product->lineSummary, count($lineNames), count($productStats));
echo "<div id='productsCount' class='statistic'>$summary</div>";
?>
<div class="table-actions btn-toolbar">
<?php
+1 -1
View File
@@ -1979,7 +1979,7 @@ class projectModel extends model
if($id == 'name')
{
$class .= ' text-left';
$title = "title='{$project->name} ({$this->lang->project->{$project->model}})'";
$title = "title='{$project->name}" . ($this->config->vision == 'lite' ? "'" : "({$this->lang->project->{$project->model}})'");
}
if($id == 'end')
+7 -4
View File
@@ -1112,10 +1112,11 @@ class task extends control
*
* @param int $taskID
* @param string $from
* @param string $orderBy
* @access public
* @return void
*/
public function recordEstimate($taskID, $from = '')
public function recordEstimate($taskID, $from = '', $orderBy = '')
{
$this->commonAction($taskID);
@@ -1174,12 +1175,14 @@ class task extends control
$this->session->set('estimateList', $uri, 'execution');
if(isonlybody()) $this->session->set('estimateList', $uri . (strpos($uri, '?') === false ? '?' : '&') . 'onlybody=yes', 'execution');
$task = $this->task->getById($taskID);
$orderBy = 'date,id';
if(!empty($task->team) and $task->mode == 'linear') $orderBy = 'order,date,id';
$task = $this->task->getById($taskID);
if(!empty($task->team) and $task->mode == 'linear' and !$orderBy) $orderBy = 'order_asc';
if(!$orderBy) $orderBy = 'date_asc';
$this->view->title = $this->lang->task->record;
$this->view->task = $task;
$this->view->from = $from;
$this->view->orderBy = $orderBy;
$this->view->efforts = $this->task->getTaskEstimate($taskID, '', '', $orderBy);
$this->view->users = $this->loadModel('user')->getPairs('noclosed|noletter');
$this->display();
+3
View File
@@ -18,3 +18,6 @@
.main-header ul.hours:after{content:")"}
.body-modal .main-header>h2 { max-width: 70% !important; margin-right:0px;}
.table-record .form-date {border-right: none;}
.table.has-sort-head thead>tr>th>a:after, .table.has-sort-head thead>tr>th>a:before {top: -7px;}
.table.has-sort-head thead>tr>th>a:hover, .table.has-sort-head thead>tr>th>a:hover:after, .table.has-sort-head thead>tr>th>a:hover:before {color: #000;}
+19 -1
View File
@@ -1,5 +1,24 @@
$(function()
{
/* Set default tab. */
if($.cookie('recordEstimateType') == 'all')
{
$('#recordForm').addClass('hidden');
$('.my-effort, #legendMyEffort').removeClass('active');
$('.all-effort, #legendAllEffort').addClass('active');
}
else
{
$('.my-effort, #legendMyEffort').addClass('active');
$('#recordForm').removeClass('hidden');
}
$.cookie('recordEstimateType', null);
$('.order-btn').on('click', function()
{
$.cookie('recordEstimateType', 'all');
});
/* Hide creation logs when displaying team logs. */
$('#linearefforts .tabs ul > li').click(function()
{
@@ -7,7 +26,6 @@ $(function()
$('#recordForm').toggleClass('hidden', tab == '#legendAllEffort');
});
$('.form-date').datetimepicker('setEndDate', today);
$("#recordForm #submit").click(function(e, confirmed)
+3 -2
View File
@@ -2910,13 +2910,14 @@ class taskModel extends model
->where('id')->eq((int)$estimateID)
->exec();
$consumed = $task->consumed + $estimate->consumed - $oldEstimate->consumed;
$left = ($lastEstimate and $estimateID == $lastEstimate->id) ? $estimate->left : $task->left;
$lastEstimate = $this->dao->select('*')->from(TABLE_EFFORT)
->where('objectID')->eq($task->id)
->andWhere('objectType')->eq('task')
->orderBy('date_desc,id_desc')->limit(1)->fetch();
$consumed = $task->consumed + $estimate->consumed - $oldEstimate->consumed;
$left = ($lastEstimate and $estimateID == $lastEstimate->id) ? $estimate->left : $task->left;
$now = helper::now();
$data = new stdClass();
$data->consumed = $consumed;
+28 -15
View File
@@ -16,33 +16,45 @@ foreach($task->team as $team) $teamOrders[$team->order] = $team->account;
$myOrders = array();
$allEfforts = array();
$recorders = array();
foreach($efforts as $effort)
$index = 0;
$allOrders = array();
$efforts = array_values($efforts);
foreach($efforts as $key => $effort)
{
$order = $effort->order;
$account = $effort->account;
$allEfforts[$order][] = $effort;
$prevEffort = $key > 0 ? $efforts[$key - 1] : null;
$order = (!$prevEffort or $prevEffort->order == $effort->order) ? $index : ++$index;
$account = $effort->account;
$allEfforts[$order][] = $effort;
$recorders[$order][$account] = $account;
if($app->user->account == $account)
{
if(!isset($myOrders[$order])) $myOrders[$order] = 0;
$myOrders[$order] += 1;
}
$allOrders[$order] = $effort->order + 1;
}
?>
<div id='linearefforts'>
<div class='tabs'>
<ul class='nav nav-tabs'>
<li class='active'><a href='#legendMyEffort' data-toggle='tab'><?php echo $lang->task->myEffort;?></a></li>
<li><a href='#legendAllEffort' data-toggle='tab'><?php echo $lang->task->allEffort;?></a></li>
<li class='my-effort'><a href='#legendMyEffort' data-toggle='tab'><?php echo $lang->task->myEffort;?></a></li>
<li class='all-effort'><a href='#legendAllEffort' data-toggle='tab'><?php echo $lang->task->allEffort;?></a></li>
</ul>
<div class='tab-content'>
<div class='tab-pane active' id='legendMyEffort'>
<div class='tab-pane' id='legendMyEffort'>
<?php if(!empty($myOrders)):?>
<table class='table table-bordered table-fixed table-recorded'>
<table class='table table-bordered table-fixed table-recorded has-sort-head'>
<thead>
<tr class='text-center'>
<th class="w-60px"> <?php echo $lang->task->teamOrder;?></th>
<th class="w-120px"><?php echo $lang->task->date;?></th>
<?php
$vars = (isset($objectType) ? "objectType=$objectType&" : '') . "taskID=$task->id&from=$from&orderBy=%s";
$sort = explode(',', $orderBy);
$orderBy = zget($sort, '0', '');
if(!strpos($orderBy, '_')) $orderBy .= '_asc';
?>
<th class="w-60px"><?php common::printOrderLink('order', $orderBy, $vars, $lang->task->teamOrder);?></th>
<th class="w-120px"><?php common::printOrderLink('date', $orderBy, $vars, $lang->task->date);?></th>
<th class="w-120px"><?php echo $lang->task->recordedBy;?></th>
<th><?php echo $lang->task->work;?></th>
<th class="thWidth"><?php echo $lang->task->consumedAB;?></th>
@@ -58,7 +70,7 @@ foreach($efforts as $effort)
<?php if($effort->account != $this->app->user->account) continue;?>
<tr class="text-center">
<?php if(!$showOrder):?>
<td rowspan='<?php echo $count;?>'><?php echo $order + 1;?></td>
<td rowspan='<?php echo $count;?>'><?php echo $allOrders[$order];?></td>
<?php $showOrder = true;?>
<?php endif;?>
<td><?php echo $effort->date;?></td>
@@ -84,11 +96,12 @@ foreach($efforts as $effort)
<?php endif;?>
</div>
<div class='tab-pane' id='legendAllEffort'>
<table class='table table-bordered table-fixed table-recorded'>
<table class='table table-bordered table-fixed table-recorded has-sort-head'>
<thead>
<tr class='text-center'>
<th class="w-60px"> <?php echo $lang->task->teamOrder;?></th>
<th class="w-120px"><?php echo $lang->task->date;?></th>
<?php $vars = (isset($objectType) ? "objectType=$objectType&" : '') . "taskID=$task->id&from=$from&orderBy=%s";?>
<th class="w-60px order-btn"><?php common::printOrderLink('order', $orderBy, $vars, $lang->task->teamOrder);?></th>
<th class="w-120px order-btn"><?php common::printOrderLink('date', $orderBy, $vars, $lang->task->date);?></th>
<th class="w-120px"><?php echo $lang->task->recordedBy;?></th>
<th><?php echo $lang->task->work;?></th>
<th class="thWidth"><?php echo $lang->task->consumedAB;?></th>
@@ -103,7 +116,7 @@ foreach($efforts as $effort)
<?php foreach($allEfforts[$order] as $effort):?>
<tr class="text-center">
<?php if(!$showOrder):?>
<td rowspan='<?php echo $count;?>'><?php echo $order + 1;?></td>
<td rowspan='<?php echo $count;?>'><?php echo $allOrders[$order];?></td>
<?php $showOrder = true;?>
<?php endif;?>
<td><?php echo $effort->date;?></td>
+7 -3
View File
@@ -12,6 +12,9 @@
?>
<?php include '../../common/view/header.lite.html.php';?>
<?php include '../../common/view/datepicker.html.php';?>
<?php if(!$this->task->canOperateEffort($task) and empty($myOrders)):?>
<style>#mainContent {min-height: unset;}</style>
<?php endif;?>
<?php $members = $task->members;?>
<?php
$confirmRecord = $lang->task->confirmRecord;
@@ -56,10 +59,11 @@ if(!empty($members) && $task->mode == 'linear')
<?php if(!empty($task->team) and $task->mode == 'linear'):?>
<?php include __DIR__ . '/lineareffort.html.php';?>
<?php else:?>
<table class='table table-bordered table-fixed table-recorded'>
<table class='table table-bordered table-fixed table-recorded has-sort-head'>
<thead>
<tr class='text-center'>
<th class="w-120px"><?php echo $lang->task->date;?></th>
<?php $vars = "taskID=$task->id&from=$from&orderBy=%s";?>
<th class="w-120px"><?php common::printOrderLink('date', !strpos($orderBy, ',') ? $orderBy : 'date_asc', $vars, $lang->task->date);?></th>
<th class="w-120px"><?php echo $lang->task->recordedBy;?></th>
<th><?php echo $lang->task->work;?></th>
<th class="thWidth"><?php echo $lang->task->consumed;?></th>
@@ -100,7 +104,7 @@ if(!empty($members) && $task->mode == 'linear')
</div>
</div>
<?php else:?>
<form id="recordForm" method='post' target='hiddenwin'>
<form id="recordForm" class='hidden' method='post' target='hiddenwin'>
<?php
$readonly = '';
$left = '';
+4 -1
View File
@@ -975,13 +975,16 @@ class testcase extends control
$moduleIdList = $case->module;
if($case->module) $moduleIdList = $this->tree->getAllChildID($case->module);
$moduleIdList = (!in_array($this->app->tab, array('execution', 'project')) and empty($stories)) ? 0 : $moduleIdList;
$stories = $this->story->getProductStoryPairs($productID, $case->branch, $moduleIdList, 'all','id_desc', 0, 'full', 'story', false);
$this->view->productID = $productID;
$this->view->product = $product;
$this->view->products = $this->products;
$this->view->branchTagOption = $branchTagOption;
$this->view->productName = $this->products[$productID];
$this->view->moduleOptionMenu = $moduleOptionMenu;
$this->view->stories = $this->story->getProductStoryPairs($productID, $case->branch, $moduleIdList, 'all','id_desc', 0, 'full', 'story', false);
$this->view->stories = $stories;
}
$forceNotReview = $this->testcase->forceNotReview();
if($forceNotReview) unset($this->lang->testcase->statusList['wait']);
+4 -2
View File
@@ -114,6 +114,7 @@ js::set('suiteID', $suiteID);
<tr data-id='<?php echo $case->id?>'>
<?php foreach($setting as $key => $value) $this->testcase->printCell($value, $case, $users, $branchOption, $modulePairs, $browseType, $useDatatable ? 'datatable' : 'table');?>
</tr>
<?php $caseProductIds[$case->product] = $case->product;?>
<?php endforeach;?>
</tbody>
</table>
@@ -129,8 +130,9 @@ js::set('suiteID', $suiteID);
$misc = $canBatchRun ? "onclick=\"setFormAction('$actionLink', '', '#caseList')\"" : "disabled='disabled'";
echo html::commonButton($lang->testtask->runCase, $misc);
$actionLink = $this->createLink('testcase', 'batchEdit', "productID=$productID&branch=$branch");
$misc = $canBatchEdit ? "onclick=\"setFormAction('$actionLink', '', '#caseList')\"" : "disabled='disabled'";
$caseProductID = count($caseProductIds) > 1 ? 0 : $productID;
$actionLink = $this->createLink('testcase', 'batchEdit', "productID=$caseProductID&branch=$branch");
$misc = $canBatchEdit ? "onclick=\"setFormAction('$actionLink', '', '#caseList')\"" : "disabled='disabled'";
echo html::commonButton($lang->edit, $misc);
?>
<button type='button' class='btn dropdown-toggle' data-toggle='dropdown'><span class='caret'></span></button>
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long