diff --git a/module/testcase/view/browse.html.php b/module/testcase/view/browse.html.php index adae070fd3..38d148f7a0 100644 --- a/module/testcase/view/browse.html.php +++ b/module/testcase/view/browse.html.php @@ -58,34 +58,40 @@ js::set('langNormal', $lang->testcase->normal);
'>
- - + +

- cookie->onlyScene): ?> - testcase->noScene;?> - - - createLink('testcase', 'createScene', "productID=$productID&branch=$branch&moduleID=$initModule"), " " . $lang->testcase->newScene, '', "class='btn btn-info' data-app='{$this->app->tab}'");?> - - - testcase->noCase;?> - - - createLink('testcase', 'create', "productID=$productID&branch=$branch&moduleID=$initModule"), " " . $lang->testcase->create, '', "class='btn btn-info' data-app='{$this->app->tab}'");?> - + cookie->onlyScene) + { + echo "{$lang->testcase->noScene}"; + if((empty($productID) || common::canModify('product', $product)) && common::hasPriv('testcase', 'createScene') && $browseType != 'bysuite') + { + $initModule = isset($moduleID) ? (int)$moduleID : 0; + if($productID) echo html::a($this->createLink('testcase', 'createScene', "productID=$productID&branch=$branch&moduleID=$initModule"), " " . $lang->testcase->newScene, '', "class='btn btn-info' data-app='{$this->app->tab}'"); + } + } + else + { + echo "{$lang->testcase->noCase}"; + if((empty($productID) || common::canModify('product', $product)) && common::hasPriv('testcase', 'create') && $browseType != 'bysuite') + { + $initModule = isset($moduleID) ? (int)$moduleID : 0; + echo html::a($this->createLink('testcase', 'create', "productID=$productID&branch=$branch&moduleID=$initModule"), " " . $lang->testcase->create, '', "class='btn btn-info' data-app='{$this->app->tab}'"); + } - - createLink('testsuite', 'linkCase', "suiteID=$param"), " " . $lang->testsuite->linkCase, '', "class='btn btn-info' data-app='{$this->app->tab}'");?> - - + if(common::hasPriv('testsuite', 'linkCase') && $browseType == 'bysuite') + { + echo html::a($this->createLink('testsuite', 'linkCase', "suiteID=$param"), " " . $lang->testsuite->linkCase, '', "class='btn btn-info' data-app='{$this->app->tab}'"); + } + } + ?>

- moduleName . ucfirst($this->methodName); - $useDatatable = (!empty($config->testcase->useDatatable) and isset($config->datatable->$datatableId->mode) and $config->datatable->$datatableId->mode == 'datatable'); - ?> + moduleName . ucfirst($this->methodName);?> + testcase->useDatatable) && isset($config->datatable->$datatableId->mode) && $config->datatable->$datatableId->mode == 'datatable');?>
>
@@ -97,7 +103,7 @@ js::set('langNormal', $lang->testcase->normal); if($useDatatable) include '../../common/view/datatable.html.php'; else include '../../common/view/tablesorter.html.php'; - if($config->testcase->needReview or !empty($config->testcase->forceReview)) $config->testcase->datatable->fieldList['actions']['width'] = '190'; + if($config->testcase->needReview || !empty($config->testcase->forceReview)) $config->testcase->datatable->fieldList['actions']['width'] = '190'; $setting = $this->datatable->getSetting('testcase'); $widths = $this->datatable->setFixedFieldWidth($setting); $columns = 0; @@ -109,7 +115,7 @@ js::set('langNormal', $lang->testcase->normal); $canBatchConfirmStoryChange = common::hasPriv('testcase', 'batchConfirmStoryChange'); $canBatchChangeModule = common::hasPriv('testcase', 'batchChangeModule'); $canImportToLib = common::hasPriv('testcase', 'importToLib'); - $canBatchAction = ($canBatchRun or $canBatchEdit or $canBatchDelete or $canBatchCaseTypeChange or $canBatchConfirmStoryChange or $canBatchChangeModule or $canImportToLib); + $canBatchAction = ($canBatchRun || $canBatchEdit || $canBatchDelete || $canBatchCaseTypeChange || $canBatchConfirmStoryChange || $canBatchChangeModule || $canImportToLib); ?> ';?> ' id='caseList' data-fixed-left-width='' data-fixed-right-width='' data-checkbox-name='caseIDList[]'> @@ -128,35 +134,51 @@ js::set('langNormal', $lang->testcase->normal); - - $scene):?> - id' data-auto='$scene->auto' data-order='$scene->sort' data-parent='$scene->parent' data-product='$scene->product'"; - if($scene->isCase == 2) - { - $trAttrs .= " data-nested='true'"; - $trClass .= $scene->parent == '0' ? ' is-top-level table-nest-child-hide' : ' table-nest-hide'; - } + index = $index; - if($scene->parent and isset($scenes[$scene->parent])) - { - if($scene->isCase != 2) $trClass .= ' is-nest-child'; - if(empty($scene->path)) $scene->path = $scenes[$scene->parent]->path . "$scene->id,"; - $trClass .= ' table-nest-hide'; - $trAttrs .= " data-nest-parent='$scene->parent' data-nest-path='$scene->path'"; - } - elseif($scene->isCase != 2) - { - $trClass .= ' no-nest'; - } - $trAttrs .= " class='row-case $trClass'"; - $originOrders[] = $scene->id; - ?> - > - $value) $this->testcase->printCell($value, $scene, $users, $branchOption, $modulePairs, $browseType, $useDatatable ? 'datatable' : 'table',$scene->isCase);?> - - + $trClass = ''; + $trAttrs = "data-id='{$case->id}' data-auto='" . zget($case, 'auto', '') . "' data-order='{$case->sort}' data-parent='{$case->parent}' data-product='{$case->product}'"; + if($case->isCase == 2) + { + $trAttrs .= " data-nested='true'"; + $trClass .= $case->parent == '0' ? ' is-top-level table-nest-child-hide' : ' table-nest-hide'; + } + + if($case->parent) + { + if($case->isCase != 2) $trClass .= ' is-nest-child'; + $trClass .= ' table-nest-hide'; + $trAttrs .= " data-nest-parent='{$case->parent}' data-nest-path='{$case->path}'"; + } + elseif($case->isCase != 2) + { + $trClass .= ' no-nest'; + } + $trAttrs .= " class='row-case $trClass'"; + + echo ""; + foreach($setting as $key => $value) $testcase->printCell($value, $case, $users, $branchOption, $modulePairs, $browseType, $mode, $case->isCase); + echo ''; + + $index++; + + if(!empty($case->children) || !empty($case->cases)) + { + if(!empty($case->children)) $index = printRow($index, $testcase, $case->children, $setting, $users, $branchOption, $modulePairs, $browseType, $mode); + if(!empty($case->cases)) $index = printRow($index, $testcase, $case->cases, $setting, $users, $branchOption, $modulePairs, $browseType, $mode); + } + } + + return $index; + } + + printRow(1, $this->testcase, $cases, $setting, $users, $branchOption, $modulePairs, $browseType, $useDatatable ? 'datatable' : 'table'); + ?>
';?> @@ -292,7 +314,7 @@ js::set('langNormal', $lang->testcase->normal);
- 6;?> + 6;?>