* Finish task #73838 ~ #73844.

This commit is contained in:
wangyuting2
2022-11-02 01:15:40 +00:00
parent b04efbf36c
commit d54ca95ff6
8 changed files with 78 additions and 39 deletions
+8 -2
View File
@@ -1326,10 +1326,16 @@ class testcaseModel extends model
*/
public static function isClickable($case, $action, $module = 'testcase')
{
global $config;
$hasAssetlib = strpos(",$config->disabledFeatures,", ',assetlib,') === false;
$hasAssetlibCaselib = strpos(",$config->disabledFeatures,", ',assetlibCaselib,') === false;
$action = strtolower($action);
if($module == 'testcase' && $action == 'createbug') return $case->caseFails > 0;
if($module == 'testcase' && $action == 'review') return isset($case->caseStatus) ? $case->caseStatus == 'wait' : $case->status == 'wait';
if($module == 'testcase' && $action == 'createbug') return $case->caseFails > 0;
if($module == 'testcase' && $action == 'review') return isset($case->caseStatus) ? $case->caseStatus == 'wait' : $case->status == 'wait';
if($module == 'testcase' && $action == 'importtolib') return ($hasAssetlib and $hasAssetlibCaselib);
return true;
}
+4 -1
View File
@@ -23,6 +23,9 @@ js::set('batchDelete', $lang->testcase->confirmBatchDelete);
js::set('productID', $productID);
js::set('branch', $branch);
js::set('suiteID', $suiteID);
$hasAssetlib = strpos(",$config->disabledFeatures,", ',assetlib,') === false;
$hasAssetlibCaselib = strpos(",$config->disabledFeatures,", ',assetlibCaselib,') === false;
?>
<?php if($this->app->tab == 'project'):?>
<style>
@@ -90,7 +93,7 @@ js::set('suiteID', $suiteID);
$canBatchCaseTypeChange = common::hasPriv('testcase', 'batchCaseTypeChange');
$canBatchConfirmStoryChange = common::hasPriv('testcase', 'batchConfirmStoryChange');
$canBatchChangeModule = common::hasPriv('testcase', 'batchChangeModule');
$canImportToLib = common::hasPriv('testcase', 'importToLib');
$canImportToLib = (common::hasPriv('testcase', 'importToLib') and $hasAssetlib and $hasAssetlibCaselib);
$canBatchAction = ($canBatchRun or $canBatchEdit or $canBatchDelete or $canBatchCaseTypeChange or $canBatchConfirmStoryChange or $canBatchChangeModule or $canImportToLib);
?>
<?php if(!$useDatatable) echo '<div class="table-responsive">';?>
+7 -5
View File
@@ -1,8 +1,10 @@
<?php js::set('flow', $config->global->flow);?>
<?php $isProjectApp = $this->app->tab == 'project'?>
<?php $currentModule = $isProjectApp ? 'project' : 'testcase';?>
<?php $currentMethod = $isProjectApp ? 'testcase' : 'browse';?>
<?php $projectParam = $isProjectApp ? "projectID={$this->session->project}&" : '';?>
<?php $isProjectApp = $this->app->tab == 'project'?>
<?php $currentModule = $isProjectApp ? 'project' : 'testcase';?>
<?php $currentMethod = $isProjectApp ? 'testcase' : 'browse';?>
<?php $projectParam = $isProjectApp ? "projectID={$this->session->project}&" : '';?>
<?php $hasAssetlib = strpos(",$config->disabledFeatures,", ',assetlib,') === false;?>
<?php $hasAssetlibCaselib = strpos(",$config->disabledFeatures,", ',assetlibCaselib,') === false;?>
<?php if(common::checkNotCN()):?>
<style> .btn-toolbar>.btn {margin-right: 3px !important;}</style>
<?php endif;?>
@@ -145,7 +147,7 @@
if(common::hasPriv('testcase', 'import')) echo "<li>" . html::a($this->createlink('testcase', 'import', "productID=$productID&branch=$branch"), $lang->testcase->fileImport, '', "class='export' data-app={$app->tab}") . "</li>";
$link = $this->createLink('testcase', 'importFromLib', "productID=$productID&branch=$branch&libID=0&orderBy=id_desc&browseType=&queryID=10&recTotal=0&recPerPage=20&pageID=1&projectID=$projectID");
if(common::hasPriv('testcase', 'importFromLib')) echo "<li>" . html::a($link, $lang->testcase->importFromLib, '', "data-app={$app->tab}") . "</li>";
if(common::hasPriv('testcase', 'importFromLib') and $hasAssetlib and $hasAssetlibCaselib) echo "<li>" . html::a($link, $lang->testcase->importFromLib, '', "data-app={$app->tab}") . "</li>";
?>
</ul>
</div>
+4 -2
View File
@@ -15,6 +15,8 @@
<?php $browseLink = $app->session->caseList ? $app->session->caseList : $this->createLink('testcase', 'browse', "productID=$case->product");?>
<?php js::set('sysurl', common::getSysUrl());?>
<?php js::set('tab', $app->tab);?>
<?php $hasAssetlib = strpos(",$config->disabledFeatures,", ',assetlib,') === false;?>
<?php $hasAssetlibCaselib = strpos(",$config->disabledFeatures,", ',assetlibCaselib,') === false;?>
<div id='mainMenu' class='clearfix'>
<div class='btn-toolbar pull-left'>
<?php if(!isonlybody()):?>
@@ -260,8 +262,8 @@
if(isset($case->fromCaseVersion) and $case->fromCaseVersion > $case->version and $from != 'testtask' and !empty($case->product))
{
echo "(<span class='warning' title={$lang->testcase->fromCaselib}>{$lang->testcase->changed}</span> ";
if(common::hasPriv('testcase', 'confirmLibcaseChange')) echo html::a($this->createLink('testcase', 'confirmLibcaseChange', "caseID=$case->id&libcaseID=$case->fromCaseID"), $lang->testcase->sync, 'hiddenwin', "class='btn btn-mini btn-info'");
if(common::hasPriv('testcase', 'ignoreLibcaseChange')) echo html::a($this->createLink('testcase', 'ignoreLibcaseChange', "caseID=$case->id"), $lang->testcase->ignore, 'hiddenwin', "class='btn btn-mini btn-info'");
if(common::hasPriv('testcase', 'confirmLibcaseChange') and $hasAssetlib and $hasAssetlibCaselib) echo html::a($this->createLink('testcase', 'confirmLibcaseChange', "caseID=$case->id&libcaseID=$case->fromCaseID"), $lang->testcase->sync, 'hiddenwin', "class='btn btn-mini btn-info'");
if(common::hasPriv('testcase', 'ignoreLibcaseChange') and $hasAssetlib and $hasAssetlibCaselib) echo html::a($this->createLink('testcase', 'ignoreLibcaseChange', "caseID=$case->id"), $lang->testcase->ignore, 'hiddenwin', "class='btn btn-mini btn-info'");
echo ")";
}
?>