Merge branch 'zenops_61' into 'master'
Fix bugs See merge request easycorp/zentaopms!6935
This commit is contained in:
@@ -30,3 +30,4 @@ tbody > tr > td .icon-share {font-size: 9px;}
|
||||
|
||||
#mainMenu .pull-left .dividing-line {margin: 7px 5px 0 0;}
|
||||
.btn-toolbar>.btn, .btn-toolbar>.btn-group, .btn-toolbar>.dropdown {margin-right: 5px;}
|
||||
.checkbox-primary{float: left;}
|
||||
|
||||
@@ -265,6 +265,6 @@ $lang->testcase->featureBar['browse']['wait'] = 'Wartend';
|
||||
$lang->testcase->featureBar['browse']['needconfirm'] = $lang->testcase->needConfirm;
|
||||
$lang->testcase->featureBar['browse']['group'] = 'Group View';
|
||||
$lang->testcase->featureBar['browse']['zerocase'] = 'Zero Case Story';
|
||||
$lang->testcase->featureBar['browse']['autocase'] = $lang->testcase->showAutoCase;
|
||||
$lang->testcase->featureBar['browse']['suite'] = 'Suite';
|
||||
$lang->testcase->featureBar['browse']['autocase'] = $lang->testcase->showAutoCase;
|
||||
$lang->testcase->featureBar['groupcase'] = $lang->testcase->featureBar['browse'];
|
||||
|
||||
@@ -265,6 +265,6 @@ $lang->testcase->featureBar['browse']['wait'] = 'Waiting';
|
||||
$lang->testcase->featureBar['browse']['needconfirm'] = $lang->testcase->needConfirm;
|
||||
$lang->testcase->featureBar['browse']['group'] = 'Group View';
|
||||
$lang->testcase->featureBar['browse']['zerocase'] = 'Zero Case Story';
|
||||
$lang->testcase->featureBar['browse']['autocase'] = $lang->testcase->showAutoCase;
|
||||
$lang->testcase->featureBar['browse']['suite'] = 'Suite';
|
||||
$lang->testcase->featureBar['browse']['autocase'] = $lang->testcase->showAutoCase;
|
||||
$lang->testcase->featureBar['groupcase'] = $lang->testcase->featureBar['browse'];
|
||||
|
||||
@@ -265,6 +265,6 @@ $lang->testcase->featureBar['browse']['wait'] = 'En Attente';
|
||||
$lang->testcase->featureBar['browse']['needconfirm'] = $lang->testcase->needConfirm;
|
||||
$lang->testcase->featureBar['browse']['group'] = 'Group View';
|
||||
$lang->testcase->featureBar['browse']['zerocase'] = 'Zero Case Story';
|
||||
$lang->testcase->featureBar['browse']['autocase'] = $lang->testcase->showAutoCase;
|
||||
$lang->testcase->featureBar['browse']['suite'] = 'Suite';
|
||||
$lang->testcase->featureBar['browse']['autocase'] = $lang->testcase->showAutoCase;
|
||||
$lang->testcase->featureBar['groupcase'] = $lang->testcase->featureBar['browse'];
|
||||
|
||||
@@ -265,6 +265,6 @@ $lang->testcase->featureBar['browse']['wait'] = '待评审';
|
||||
$lang->testcase->featureBar['browse']['needconfirm'] = $lang->testcase->needConfirm;
|
||||
$lang->testcase->featureBar['browse']['group'] = '分组查看';
|
||||
$lang->testcase->featureBar['browse']['zerocase'] = "零用例{$lang->SRCommon}";
|
||||
$lang->testcase->featureBar['browse']['autocase'] = $lang->testcase->showAutoCase;
|
||||
$lang->testcase->featureBar['browse']['suite'] = '套件';
|
||||
$lang->testcase->featureBar['browse']['autocase'] = $lang->testcase->showAutoCase;
|
||||
$lang->testcase->featureBar['groupcase'] = $lang->testcase->featureBar['browse'];
|
||||
|
||||
@@ -18,7 +18,7 @@
|
||||
<div class='center-block'>
|
||||
<div class='main-header'>
|
||||
<h2>
|
||||
<span title='<?php echo $lang->zanode->automation;?>'><?php echo $lang->zanode->automation;?></span>
|
||||
<span title='<?php echo $lang->zanode->automation;?>'><?php echo $lang->zanode->automation;?> <icon class='icon icon-help' data-toggle='popover' data-trigger='focus hover' data-placement='bottom' data-tip-class='text-muted popover-sm' data-content="<?php echo $lang->zanode->automationTips;?>"></icon></span>
|
||||
</h2>
|
||||
</div>
|
||||
<form method='post' target='hiddenwin'>
|
||||
|
||||
@@ -194,15 +194,9 @@
|
||||
<?php if(!isonlybody()):?>
|
||||
<div class='btn-toolbar pull-right'>
|
||||
<?php if(!empty($productID)): ?>
|
||||
<div class='btn-group'>
|
||||
<?php common::printLink('testcase', 'automation', "productID=$productID", "<i class='icon-wrench muted'> </i>" . $lang->testcase->automation, '', "class='btn btn-link iframe' data-width='50%'", true, true)?>
|
||||
<?php if(common::hasPriv('testcase', 'automation')):?>
|
||||
<icon class='icon icon-help' data-toggle='popover' data-trigger='focus hover' data-placement='bottom' data-tip-class='text-muted popover-sm' data-content="<?php echo $lang->zanode->automationTips;?>"></icon>
|
||||
<?php endif;?>
|
||||
</div>
|
||||
<div class='btn-group'>
|
||||
<button type='button' class='btn btn-link dropdown-toggle' data-toggle='dropdown'>
|
||||
<i class='icon icon-export muted'></i> <?php echo $lang->export ?>
|
||||
<i class='icon icon-export muted'></i>
|
||||
<span class='caret'></span>
|
||||
</button>
|
||||
<ul class='dropdown-menu pull-right' id='exportActionMenu'>
|
||||
@@ -223,7 +217,7 @@
|
||||
<?php if(empty($productID) or common::canModify('product', $product)):?>
|
||||
<?php if(!empty($productID) and (common::hasPriv('testcase', 'import') or common::hasPriv('testcase', 'importFromLib'))): ?>
|
||||
<div class='btn-group'>
|
||||
<button type='button' class='btn btn-link dropdown-toggle' data-toggle='dropdown' id='importAction'><i class='icon icon-import muted'></i> <?php echo $lang->import ?><span class='caret'></span></button>
|
||||
<button type='button' class='btn btn-link dropdown-toggle' data-toggle='dropdown' id='importAction'><i class='icon icon-import muted'></i> <span class='caret'></span></button>
|
||||
<ul class='dropdown-menu pull-right' id='importActionMenu'>
|
||||
<?php
|
||||
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>";
|
||||
@@ -234,6 +228,12 @@
|
||||
</ul>
|
||||
</div>
|
||||
<?php endif;?>
|
||||
<?php if(!empty($productID)): ?>
|
||||
<div class='btn-group'>
|
||||
<?php common::printLink('testcase', 'automation', "productID=$productID", "<i class='icon-wrench muted'> </i>" . $lang->testcase->automation, '', "class='btn btn-link iframe' data-width='50%'", true, true)?>
|
||||
</div>
|
||||
<?php endif;?>
|
||||
|
||||
<?php $initModule = isset($moduleID) ? (int)$moduleID : 0;?>
|
||||
<div class='btn-group dropdown'>
|
||||
<?php
|
||||
|
||||
@@ -34,6 +34,7 @@ function updateProgress() {
|
||||
$('.image-download-' + imageID).addClass('disabled');
|
||||
$('.image-cancel-' + imageID).addClass('disabled');
|
||||
$('.image-cancel-' + imageID).attr('href', '#');
|
||||
$('.image-progress-' + imageID).text("100%");
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
@@ -469,7 +469,9 @@ class zanode extends control
|
||||
|
||||
if(dao::isError())
|
||||
{
|
||||
return print(js::alert(dao::getError()) . js::reload('parent'));
|
||||
$errors = dao::getError();
|
||||
if(is_array($errors)) $errors = implode($errors, ',');
|
||||
return print(js::alert($errors) . js::reload('parent'));
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
@@ -101,8 +101,9 @@ $lang->zanode->imageNameEmpty = 'Name can not be empty.';
|
||||
|
||||
$lang->zanode->runTimeout = 'Network connection timeout, please check the host and execution node status.';
|
||||
|
||||
$lang->zanode->apiError['-10100'] = 'ZenAgent Node not found.';
|
||||
$lang->zanode->apiError['fail'] = 'Connection timeout, Please check the host and execution node status.';
|
||||
$lang->zanode->apiError['-10100'] = 'ZenAgent Node not found.';
|
||||
$lang->zanode->apiError['fail'] = 'Connection timeout, Please check the host and execution node status.';
|
||||
$lang->zanode->apiError['notRunning'] = 'Please check the execution node status.';
|
||||
|
||||
$lang->zanode->publicList[0] = 'Private';
|
||||
$lang->zanode->publicList[1] = 'Public';
|
||||
|
||||
@@ -105,8 +105,9 @@ $lang->zanode->snapRestoring = 'Snapshot is restoring.';
|
||||
|
||||
$lang->zanode->runTimeout = 'Network connection timeout, please check the host and execution node status.';
|
||||
|
||||
$lang->zanode->apiError['-10100'] = 'ZenAgent Node not found.';
|
||||
$lang->zanode->apiError['fail'] = 'Connection timeout, Please check the host and execution node status.';
|
||||
$lang->zanode->apiError['-10100'] = 'ZenAgent Node not found.';
|
||||
$lang->zanode->apiError['fail'] = 'Connection timeout, Please check the host and execution node status.';
|
||||
$lang->zanode->apiError['notRunning'] = 'Please check the execution node status.';
|
||||
|
||||
$lang->zanode->publicList[0] = 'Private';
|
||||
$lang->zanode->publicList[1] = 'Public';
|
||||
|
||||
@@ -101,8 +101,9 @@ $lang->zanode->imageNameEmpty = 'Name can not be empty.';
|
||||
|
||||
$lang->zanode->runTimeout = 'Network connection timeout, please check the host and execution node status.';
|
||||
|
||||
$lang->zanode->apiError['-10100'] = 'ZenAgent Node not found.';
|
||||
$lang->zanode->apiError['fail'] = 'Connection timeout, Please check the host and execution node status.';
|
||||
$lang->zanode->apiError['-10100'] = 'ZenAgent Node not found.';
|
||||
$lang->zanode->apiError['fail'] = 'Connection timeout, Please check the host and execution node status.';
|
||||
$lang->zanode->apiError['notRunning'] = 'Please check the execution node status.';
|
||||
|
||||
$lang->zanode->publicList[0] = 'Private';
|
||||
$lang->zanode->publicList[1] = 'Public';
|
||||
|
||||
@@ -106,8 +106,9 @@ $lang->zanode->snapRestoring = '快照正在还原中';
|
||||
|
||||
$lang->zanode->runTimeout = '自动执行失败,请检查宿主机和执行节点状态';
|
||||
|
||||
$lang->zanode->apiError['-10100'] = '执行节点不存在';
|
||||
$lang->zanode->apiError['fail'] = '执行失败,请检查宿主机和执行节点状态';
|
||||
$lang->zanode->apiError['-10100'] = '执行节点不存在';
|
||||
$lang->zanode->apiError['fail'] = '执行失败,请检查宿主机和执行节点状态';
|
||||
$lang->zanode->apiError['notRunning'] = '请检查执行节点状态';
|
||||
|
||||
$lang->zanode->publicList[0] = '不共享';
|
||||
$lang->zanode->publicList[1] = '共享';
|
||||
|
||||
@@ -187,6 +187,9 @@ class zanodemodel extends model
|
||||
|
||||
$node = $this->getNodeByID($zanodeID);
|
||||
|
||||
if($node->status != 'running') dao::$errors['name'] = $this->lang->zanode->apiError['notRunning'];
|
||||
if(dao::isError()) return false;
|
||||
|
||||
$newSnapshot = new stdClass();
|
||||
$newSnapshot->host = $node->id;
|
||||
$newSnapshot->name = $data->name;
|
||||
|
||||
@@ -40,10 +40,10 @@
|
||||
$editAttr = $snapshot->status == 'failed' ? 'class="btn disabled"' : "title={$lang->zanode->editSnapshot} onclick='window.parent.editSnapshot(\"" . $this->createLink('zanode', 'editSnapshot', "snapshotID={$snapshot->id}") . "\")' class='btn'";
|
||||
|
||||
$restoreAttr = "title='{$lang->zanode->restoreSnapshot}' target='hiddenwin'";
|
||||
$restoreAttr .= ($node->status !='running' or $snapshot->status == 'restoring' or $snapshot->status == 'failed') ? ' class="btn disabled"' : 'class="btn"';
|
||||
$restoreAttr .= ($node->status !='running' or in_array($snapshot->status, array('creating', 'failed', 'restoring'))) ? ' class="btn disabled"' : 'class="btn"';
|
||||
|
||||
$deleteAttr = "title='{$lang->zanode->deleteSnapshot}' target='hiddenwin'";
|
||||
$deleteAttr .= (($snapshot->status == 'restoring' and (time() - strtotime($snapshot->restoreDate)) <= 600) or $snapshot->status == 'failed') ? ' class="btn disabled"' : 'class="btn"';
|
||||
$deleteAttr .= ($snapshot->status == 'restoring' or $snapshot->status == 'creating') ? ' class="btn disabled"' : 'class="btn"';
|
||||
?>
|
||||
<td title="<?php echo $snapshot->name;?>"><?php echo $snapshot->localName ? $snapshot->localName : $snapshot->name;?></td>
|
||||
<td class='<?php echo $snapshot->status;?>'><?php echo zget($lang->zanode->snapshot->statusList, $snapshot->status, '');?></td>
|
||||
|
||||
Reference in New Issue
Block a user