From 45797b370352b289766d41f419e5f11f12d9ab04 Mon Sep 17 00:00:00 2001 From: tanghucheng Date: Thu, 29 Dec 2022 10:37:25 +0800 Subject: [PATCH 1/8] * Fix issue for zahost view. --- module/zahost/css/view.css | 1 + module/zahost/view/view.html.php | 3 ++- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/module/zahost/css/view.css b/module/zahost/css/view.css index 38097ee93a..3fa66474b0 100644 --- a/module/zahost/css/view.css +++ b/module/zahost/css/view.css @@ -15,3 +15,4 @@ #statusContainer{margin:0px 0px 10px 0px;} #checkServiceStatus{background-color:unset;} .service-check{margin-top: 0px;} +.checkStatus{color: #313c52;} diff --git a/module/zahost/view/view.html.php b/module/zahost/view/view.html.php index 8440eaf99b..6a66eabde4 100644 --- a/module/zahost/view/view.html.php +++ b/module/zahost/view/view.html.php @@ -100,7 +100,7 @@
zahost->init->statusTitle;?> - +
@@ -116,6 +116,7 @@
zahost->init->initSuccessNotice, $imageLink, $createNode);?>
zahost->init->initFailNotice;?> +
"; ?>
From 11f5c90c266a98cc1a59d71bfb7f777b864e30db Mon Sep 17 00:00:00 2001 From: zhaoke Date: Thu, 29 Dec 2022 03:58:12 +0000 Subject: [PATCH 2/8] * Finish task 81389. --- module/zanode/css/view.css | 5 +- module/zanode/js/view.js | 72 +++++++++++++++++++- module/zanode/lang/zh-cn.php | 2 +- module/zanode/model.php | 9 +-- module/zanode/view/browse.html.php | 8 +-- module/zanode/view/view.html.php | 105 ++++++++++++++++++----------- 6 files changed, 151 insertions(+), 50 deletions(-) diff --git a/module/zanode/css/view.css b/module/zanode/css/view.css index 6dc94b4809..bfa44b3abf 100644 --- a/module/zanode/css/view.css +++ b/module/zanode/css/view.css @@ -8,6 +8,9 @@ .zanode-status-text i{color:#18a6fd} .status-notice{margin-top: 8px;margin-left: 18px;line-height: 28px;} .status-notice a{color: #2463c7;} +.service-status a{color: #2463c7;} .service-status{margin-top: 10px;} .vnc-detail{min-height: 60vh;} -.vnc-mask{width: 100%;height:100%;background-color: rgba(0,0,0,0);position: absolute;} \ No newline at end of file +.vnc-mask{width: 100%;height:100%;background-color: rgba(0,0,0,0);position: absolute;} +#checkServiceStatus{cursor: pointer;display:inline-flex;align-items: center;} +.status-container{display: inline-flex;align-items: flex-start;} \ No newline at end of file diff --git a/module/zanode/js/view.js b/module/zanode/js/view.js index d6a3bb6119..2bb89461e1 100644 --- a/module/zanode/js/view.js +++ b/module/zanode/js/view.js @@ -1,7 +1,75 @@ var ifm = document.getElementById("vncIframe"); ifm.height=$('.vnc-detail').css('height') $('.vnc-mask').click(function(){ - window.open(vncLink) + window.open(createLink('zanode', 'getVNC', "id=" + nodeID)) }) $('.vnc-mask').css('width', $('.vnc-detail').css('width')); -$('.vnc-mask').css('height', $('.vnc-detail').css('height')); \ No newline at end of file +$('.vnc-mask').css('height', $('.vnc-detail').css('height')); + + +$('#checkServiceStatus').click(function(){ + $.get(createLink('zanode', 'ajaxGetServiceStatus', 'nodeID=' + nodeID), function(response) + { + var resultData = JSON.parse(response); + var isSuccess = true + + for (var key in resultData.data) + { + if(key == "ZTF") + { + $('.zenagent-status').text(zanodeLang.init[resultData.data[key]]) + } + else + { + $('.ztf-status').text(zanodeLang.init[resultData.data[key]]) + } + if(resultData.data[key] !== 'ready') + { + isSuccess = false + } + }; + + if(!isSuccess) + { + $('.init-fail').show(); + } + else + { + $('.init-success').show(); + } + }); + return +}) + +$('.node-init-install').on('click', function(){ + $(this).addClass('load-indicator loading'); + var link = $(this).data('href') + $.get(link, function(response) + { + $(this).removeClass('load-indicator'); + $(this).removeClass('loading'); + $('#checkServiceStatus').trigger("click") + }) +}) + +$('.btn-init-copy').live('click', function() +{ + var copyText = $('#initBash'); + copyText.show(); + copyText .select(); + document.execCommand("Copy"); + copyText.hide(); + $('.btn-init-copy').tooltip({ + trigger: 'click', + placement: 'bottom', + title: zanodeLang.copied, + tipClass: 'tooltip-success' + }); + + $(this).tooltip('show'); + var that = this; + setTimeout(function() + { + $(that).tooltip('hide') + }, 2000) +}) \ No newline at end of file diff --git a/module/zanode/lang/zh-cn.php b/module/zanode/lang/zh-cn.php index 2209e840e2..274e9661f9 100644 --- a/module/zanode/lang/zh-cn.php +++ b/module/zanode/lang/zh-cn.php @@ -80,7 +80,7 @@ $lang->zanode->publicList[0] = '不共享'; $lang->zanode->publicList[1] = '共享'; $lang->zanode->statusList['created'] = '已创建'; -$lang->zanode->statusList['launch'] = '启动中'; +$lang->zanode->statusList['launch'] = '运行中'; $lang->zanode->statusList['ready'] = '运行中'; $lang->zanode->statusList['running'] = '运行中'; $lang->zanode->statusList['suspend'] = '暂停'; diff --git a/module/zanode/model.php b/module/zanode/model.php index f4f427684d..f60cf7b3df 100644 --- a/module/zanode/model.php +++ b/module/zanode/model.php @@ -353,7 +353,7 @@ class zanodemodel extends model if(time() - strtotime($l->heartbeat) > 60) { - $l->status = self::STATUS_LAUNCH; + $l->status = 'wait'; } } } @@ -420,7 +420,7 @@ class zanodemodel extends model } elseif(time() - strtotime($node->heartbeat) > 60) { - $node->status = self::STATUS_LAUNCH; + $node->status = 'wait'; } } } @@ -530,7 +530,7 @@ class zanodemodel extends model } elseif(time() - strtotime($node->heartbeat) > 60) { - $node->status = self::STATUS_LAUNCH; + $node->status = 'wait'; } } @@ -559,7 +559,7 @@ class zanodemodel extends model } elseif(time() - strtotime($node->heartbeat) > 60) { - $node->status = self::STATUS_LAUNCH; + $node->status = 'wait'; } } @@ -696,6 +696,7 @@ class zanodemodel extends model */ public function getServiceStatus($node) { + echo "http://{$node->ip}:{$node->zap}/api/v1/service/check";die; $result = json_decode(commonModel::http("http://{$node->ip}:{$node->zap}/api/v1/service/check", json_encode(array("services" => "all")), array(), array("Authorization:$node->tokenSN"))); if(empty($result->data->ztfStatus) || $result->code != 'success') { diff --git a/module/zanode/view/browse.html.php b/module/zanode/view/browse.html.php index f4b185128d..1a42efa3d8 100644 --- a/module/zanode/view/browse.html.php +++ b/module/zanode/view/browse.html.php @@ -75,15 +75,15 @@ zanode->suspend}' target='hiddenwin'"; - $suspendAttr .= $node->status != 'running' ? ' class="btn disabled"' : "class='btn' target='hiddenwin' onclick='if(confirm(\"{$lang->zanode->confirmSuspend}\")==false) return false;'"; + $suspendAttr .= $node->status != 'running' && $node->status != 'wait' ? ' class="btn disabled"' : "class='btn' target='hiddenwin' onclick='if(confirm(\"{$lang->zanode->confirmSuspend}\")==false) return false;'"; $resumeAttr = "title='{$lang->zanode->resume}' target='hiddenwin'"; - $resumeAttr .= $node->status == 'running' ? ' class="btn disabled"' : "class='btn' target='hiddenwin' onclick='if(confirm(\"{$lang->zanode->confirmResume}\")==false) return false;'"; + $resumeAttr .= $node->status == 'running' || $node->status == 'wait' ? ' class="btn disabled"' : "class='btn' target='hiddenwin' onclick='if(confirm(\"{$lang->zanode->confirmResume}\")==false) return false;'"; $rebootAttr = "title='{$lang->zanode->reboot}' target='hiddenwin'"; - $rebootAttr .= $node->status != 'running' ? ' class="btn disabled"' : "class='btn' target='hiddenwin' onclick='if(confirm(\"{$lang->zanode->confirmReboot}\")==false) return false;'"; + $rebootAttr .= $node->status == 'shutoff' ? ' class="btn disabled"' : "class='btn' target='hiddenwin' onclick='if(confirm(\"{$lang->zanode->confirmReboot}\")==false) return false;'"; - common::printLink('zanode', 'getVNC', "id={$node->id}", " ", '_blank', "title='{$lang->zanode->getVNC}' class='btn desktop " . (in_array($node->status ,array('running', 'launch')) ? '':'disabled') . "'", ''); + common::printLink('zanode', 'getVNC', "id={$node->id}", " ", '_blank', "title='{$lang->zanode->getVNC}' class='btn desktop " . (in_array($node->status ,array('running', 'launch', 'wait')) ? '':'disabled') . "'", ''); if($node->status == "suspend") { common::printLink('zanode', 'resume', "zanodeID={$node->id}", " ", '', $resumeAttr); diff --git a/module/zanode/view/view.html.php b/module/zanode/view/view.html.php index 9c5694d600..fda424f1e3 100644 --- a/module/zanode/view/view.html.php +++ b/module/zanode/view/view.html.php @@ -18,6 +18,8 @@ zanode->confirmReboot) ?> zanode->confirmShutdown) ?> zanode->actionSuccess) ?> +id) ?> +zanode); ?> session->zanodeList ? $this->session->zanodeList : $this->createLink('zanode', 'browse', ""); ?> osName, "windows") ? $config->zanode->defaultWinAccou
zanode->memory; ?>:
-
memory; ?>
+
memory; ?>GB
@@ -99,7 +101,7 @@ $account = strpos($zanode->osName, "windows") ? $config->zanode->defaultWinAccou
zanode->diskSize; ?>:
-
diskSize; ?>
+
diskSize; ?>GB
@@ -125,12 +127,36 @@ $account = strpos($zanode->osName, "windows") ? $config->zanode->defaultWinAccou
deleted)) { - if ($zanode->status == "running") { - common::printLink('zanode', 'suspend', "id={$zanode->id}", " " . $lang->zanode->suspend, '', "title='{$lang->zanode->suspend}' class='btn' target='hiddenwin' onclick='if(confirm(\"{$lang->zanode->confirmSuspend}\")==false) return false;'"); - } elseif ($zanode->status == "suspend") { - common::printLink('zanode', 'resume', "id={$zanode->id}", " " . $lang->zanode->resume, '', "title='{$lang->zanode->resume}' class='btn' target='hiddenwin' onclick='if(confirm(\"{$lang->zanode->confirmResume}\")==false) return false;'"); + $suspendAttr = "title='{$lang->zanode->suspend}' target='hiddenwin'"; + $suspendAttr .= $zanode->status != 'running' && $zanode->status != 'wait' ? ' class="btn disabled"' : "class='btn' target='hiddenwin' onclick='if(confirm(\"{$lang->zanode->confirmSuspend}\")==false) return false;'"; + + $resumeAttr = "title='{$lang->zanode->resume}' target='hiddenwin'"; + $resumeAttr .= $zanode->status == 'running' || $zanode->status == 'wait' ? ' class="btn disabled"' : "class='btn' target='hiddenwin' onclick='if(confirm(\"{$lang->zanode->confirmResume}\")==false) return false;'"; + + $rebootAttr = "title='{$lang->zanode->reboot}' target='hiddenwin'"; + $rebootAttr .= $zanode->status == 'shutoff' ? ' class="btn disabled"' : "class='btn' target='hiddenwin' onclick='if(confirm(\"{$lang->zanode->confirmReboot}\")==false) return false;'"; + + common::printLink('zanode', 'getVNC', "id={$zanode->id}", " ", '_blank', "title='{$lang->zanode->getVNC}' class='btn desktop " . (in_array($zanode->status ,array('running', 'launch', 'wait')) ? '':'disabled') . "'", ''); + if($zanode->status == "suspend") + { + common::printLink('zanode', 'resume', "zanodeID={$zanode->id}", " ", '', $resumeAttr); } - common::printLink('zanode', 'getVNC', "id={$zanode->id}", " " . $lang->zanode->getVNC, '_blank', "title='{$lang->zanode->getVNC}' class='btn " . (common::hasPriv('zanode', 'getVNC') && in_array($zanode->status, array('running', 'launch')) ? '' : 'disabled') . "'"); + else + { + common::printLink('zanode', 'suspend', "zanodeID={$zanode->id}", " ", '', $suspendAttr); + } + + if($zanode->status == "shutoff") + { + common::printLink('zanode', 'start', "zanodeID={$zanode->id}", " ", '', "class='btn '"); + } + else + { + common::printLink('zanode', 'close', "zanodeID={$zanode->id}", " ", '', "class='btn '"); + } + + common::printLink('zanode', 'reboot', "zanodeID={$zanode->id}", " ", '', $rebootAttr); + common::printIcon('zanode', 'edit', "id={$zanode->id}", $zanode, 'list'); } ?>
@@ -139,38 +165,41 @@ $account = strpos($zanode->osName, "windows") ? $config->zanode->defaultWinAccou
+
+
+
+ zanode->init->statusTitle; ?> + zanode->init->checkStatus; ?> +
+
+
+ +   ZenAgent:   + + +
+
+ +   ZTF:   +   + '>zanode->install ?> + +
+
+ zanode->init->initSuccessNoticeTitle, "{$lang->zanode->manual}", html::a(helper::createLink('testcase', 'automation', "", '', true), $lang->zanode->automation, '', "class='iframe' title='{$lang->zanode->automation}' data-width='50%'", '')); ?> + zanode->init->initFailNoticeTitle . '
' . $lang->zanode->init->initFailNoticeDesc;?>
+ +
+
+
+
+
+
+
zanode->desc; ?>
+
desc) ? htmlspecialchars_decode($zanode->desc) : $lang->noData; ?>
+
+
-
-
-
- zanode->init->statusTitle; ?> - zanode->init->checkStatus; ?> -
-
-
- -   ZenAgent:   - 已就绪 - -
-
- -   ZTF:   - 已就绪 - -
-
- zanode->init->initSuccessNoticeTitle, "{$lang->zanode->manual}", html::a(helper::createLink('testcase', 'automation', "", '', true), $lang->zanode->automation, '', "class='iframe' title='{$lang->zanode->automation}' data-width='50%'", '')); ?> -
-
-
-
-
-
-
zanode->desc; ?>
-
desc) ? htmlspecialchars_decode($zanode->desc) : $lang->noData; ?>
-
-
From 9fdbd6fe58c3ee80730aeb1466e974b60b1a21bd Mon Sep 17 00:00:00 2001 From: zhaoke Date: Thu, 29 Dec 2022 04:00:46 +0000 Subject: [PATCH 3/8] - Remove test code. --- module/zanode/model.php | 1 - 1 file changed, 1 deletion(-) diff --git a/module/zanode/model.php b/module/zanode/model.php index f60cf7b3df..0649de99fd 100644 --- a/module/zanode/model.php +++ b/module/zanode/model.php @@ -696,7 +696,6 @@ class zanodemodel extends model */ public function getServiceStatus($node) { - echo "http://{$node->ip}:{$node->zap}/api/v1/service/check";die; $result = json_decode(commonModel::http("http://{$node->ip}:{$node->zap}/api/v1/service/check", json_encode(array("services" => "all")), array(), array("Authorization:$node->tokenSN"))); if(empty($result->data->ztfStatus) || $result->code != 'success') { From 25060df9d7f63d445d747f9415eb274bac5f46af Mon Sep 17 00:00:00 2001 From: zhaoke Date: Thu, 29 Dec 2022 04:07:51 +0000 Subject: [PATCH 4/8] * Update lang. --- module/zanode/js/view.js | 12 ++++++++++++ module/zanode/lang/de.php | 1 + module/zanode/lang/en.php | 1 + module/zanode/lang/fr.php | 1 + module/zanode/lang/zh-cn.php | 1 + module/zanode/view/view.html.php | 6 +++--- 6 files changed, 19 insertions(+), 3 deletions(-) diff --git a/module/zanode/js/view.js b/module/zanode/js/view.js index 2bb89461e1..30d42a1566 100644 --- a/module/zanode/js/view.js +++ b/module/zanode/js/view.js @@ -18,6 +18,14 @@ $('#checkServiceStatus').click(function(){ if(key == "ZTF") { $('.zenagent-status').text(zanodeLang.init[resultData.data[key]]) + if(resultData.data[key] == 'ready' || resultData.data[key] == 'not_available') + { + $('.ztf-install').text(zanodeLang.reinstall); + } + else + { + $('.ztf-install').text(zanodeLang.install); + } } else { @@ -72,4 +80,8 @@ $('.btn-init-copy').live('click', function() { $(that).tooltip('hide') }, 2000) +}) + +$(function(){ + $('#checkServiceStatus').trigger("click") }) \ No newline at end of file diff --git a/module/zanode/lang/de.php b/module/zanode/lang/de.php index dc7ddccf41..a406e03016 100644 --- a/module/zanode/lang/de.php +++ b/module/zanode/lang/de.php @@ -48,6 +48,7 @@ $lang->zanode->scriptPath = "Script path"; $lang->zanode->shell = "Shell"; $lang->zanode->automation = "Automation"; $lang->zanode->install = "Install"; +$lang->zanode->reinstall = "Reinstall"; $lang->zanode->copy = 'Click to copy'; $lang->zanode->copied = 'Copy successful'; $lang->zanode->manual = 'Manual'; diff --git a/module/zanode/lang/en.php b/module/zanode/lang/en.php index e545d773ee..d380a1b4da 100644 --- a/module/zanode/lang/en.php +++ b/module/zanode/lang/en.php @@ -48,6 +48,7 @@ $lang->zanode->scriptPath = "Script path"; $lang->zanode->shell = "Shell"; $lang->zanode->automation = "Automation"; $lang->zanode->install = "Install"; +$lang->zanode->reinstall = "Reinstall"; $lang->zanode->copy = 'Click to copy'; $lang->zanode->copied = 'Copy successful'; $lang->zanode->manual = 'Manual'; diff --git a/module/zanode/lang/fr.php b/module/zanode/lang/fr.php index 3473f470c4..fcceafdad8 100644 --- a/module/zanode/lang/fr.php +++ b/module/zanode/lang/fr.php @@ -48,6 +48,7 @@ $lang->zanode->scriptPath = "Script path"; $lang->zanode->shell = "Shell"; $lang->zanode->automation = "Automation"; $lang->zanode->install = "Install"; +$lang->zanode->reinstall = "Reinstall"; $lang->zanode->copy = 'Click to copy'; $lang->zanode->copied = 'Copy successful'; $lang->zanode->manual = 'Manual'; diff --git a/module/zanode/lang/zh-cn.php b/module/zanode/lang/zh-cn.php index 274e9661f9..4f08ee3b4a 100644 --- a/module/zanode/lang/zh-cn.php +++ b/module/zanode/lang/zh-cn.php @@ -48,6 +48,7 @@ $lang->zanode->scriptPath = "脚本目录"; $lang->zanode->shell = "shell命令"; $lang->zanode->automation = "自动化设置"; $lang->zanode->install = "安装"; +$lang->zanode->reinstall = "重装"; $lang->zanode->copy = '复制'; $lang->zanode->copied = '复制成功'; $lang->zanode->manual = '手册'; diff --git a/module/zanode/view/view.html.php b/module/zanode/view/view.html.php index fda424f1e3..1cd119398e 100644 --- a/module/zanode/view/view.html.php +++ b/module/zanode/view/view.html.php @@ -175,14 +175,14 @@ $account = strpos($zanode->osName, "windows") ? $config->zanode->defaultWinAccou
  ZenAgent:   - + zanode->init->not_install; ?>
  ZTF:   -   - '>zanode->install ?> + zanode->init->not_install; ?>  + '>zanode->install ?>
From c55e8aea86a57760898de4f675e2a32d2628ade0 Mon Sep 17 00:00:00 2001 From: tanghucheng Date: Thu, 29 Dec 2022 13:08:00 +0800 Subject: [PATCH 5/8] * Fix issue. --- module/zahost/view/view.html.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/module/zahost/view/view.html.php b/module/zahost/view/view.html.php index 6a66eabde4..948c25d4c7 100644 --- a/module/zahost/view/view.html.php +++ b/module/zahost/view/view.html.php @@ -100,7 +100,7 @@
zahost->init->statusTitle;?> - +
From fa37b1a503d596c2ebf50e24db38c39204240988 Mon Sep 17 00:00:00 2001 From: tanghucheng Date: Thu, 29 Dec 2022 13:59:02 +0800 Subject: [PATCH 6/8] * Add start and close pri. --- module/group/lang/resource.php | 4 ++++ module/zanode/lang/zh-cn.php | 2 +- module/zanode/view/browse.html.php | 2 +- module/zanode/view/createimage.html.php | 5 +++-- 4 files changed, 9 insertions(+), 4 deletions(-) diff --git a/module/group/lang/resource.php b/module/group/lang/resource.php index ed99894093..e05274d8f7 100644 --- a/module/group/lang/resource.php +++ b/module/group/lang/resource.php @@ -1237,6 +1237,8 @@ $lang->resource->zanode->reboot = 'reboot'; $lang->resource->zanode->suspend = 'suspend'; $lang->resource->zanode->resume = 'resume'; $lang->resource->zanode->getVNC = 'getVNC'; +$lang->resource->zanode->start = 'boot'; +$lang->resource->zanode->close = 'shutdown'; $lang->zanode->methodOrder[5] = 'browse'; $lang->zanode->methodOrder[10] = 'create'; @@ -1245,6 +1247,8 @@ $lang->zanode->methodOrder[20] = 'reboot'; $lang->zanode->methodOrder[35] = 'suspend'; $lang->zanode->methodOrder[30] = 'resume'; $lang->zanode->methodOrder[35] = 'getVNC'; +$lang->zanode->methodOrder[40] = 'start'; +$lang->zanode->methodOrder[45] = 'close'; $lang->resource->repo = new stdclass(); $lang->resource->repo->browse = 'browseAction'; diff --git a/module/zanode/lang/zh-cn.php b/module/zanode/lang/zh-cn.php index 4f08ee3b4a..0ac73ca1fe 100644 --- a/module/zanode/lang/zh-cn.php +++ b/module/zanode/lang/zh-cn.php @@ -10,7 +10,7 @@ $lang->zanode->destroy = '销毁执行节点'; $lang->zanode->boot = '启动执行节点'; $lang->zanode->reboot = '重启执行节点'; $lang->zanode->shutdown = '关闭执行节点'; -$lang->zanode->resume = '启动执行节点'; +$lang->zanode->resume = '恢复执行节点'; $lang->zanode->getVNC = '远程管理'; $lang->zanode->all = '全部'; $lang->zanode->byQuery = '搜索'; diff --git a/module/zanode/view/browse.html.php b/module/zanode/view/browse.html.php index c4d78de6ef..185cf81340 100644 --- a/module/zanode/view/browse.html.php +++ b/module/zanode/view/browse.html.php @@ -108,7 +108,7 @@ echo "
"; echo ""; echo ""; diff --git a/module/zanode/view/createimage.html.php b/module/zanode/view/createimage.html.php index e51a8a933b..d9d18dcf6b 100644 --- a/module/zanode/view/createimage.html.php +++ b/module/zanode/view/createimage.html.php @@ -40,13 +40,14 @@ zanode->imageName;?> + zanode->desc;?> - + - + zanode->createImageNotice}\")==false) return false;'");?> From 55bdf2d47aca5212cb0088df172ffb684c4a20bb Mon Sep 17 00:00:00 2001 From: zhaoke Date: Thu, 29 Dec 2022 06:28:30 +0000 Subject: [PATCH 7/8] * Fix bug. --- module/zanode/control.php | 5 ++++ module/zanode/css/view.css | 4 +-- module/zanode/js/view.js | 50 ++++++++++++++++++++++++++++++-- module/zanode/lang/de.php | 4 ++- module/zanode/lang/en.php | 4 ++- module/zanode/lang/fr.php | 4 ++- module/zanode/lang/zh-cn.php | 4 ++- module/zanode/view/view.html.php | 31 ++++++++++---------- 8 files changed, 81 insertions(+), 25 deletions(-) diff --git a/module/zanode/control.php b/module/zanode/control.php index 58bf60e9f1..54e35efa19 100644 --- a/module/zanode/control.php +++ b/module/zanode/control.php @@ -399,6 +399,11 @@ class zanode extends control { $node = $this->zanode->getNodeById($hostID); $serviceStatus = $this->zanode->getServiceStatus($node); + if ($node->status != 'running') + { + $serviceStatus['ZenAgent'] = "unknown"; + $serviceStatus['ZTF'] = "unknown"; + } return $this->send(array('result' => 'success', 'message' => '', 'data' => $serviceStatus)); } diff --git a/module/zanode/css/view.css b/module/zanode/css/view.css index bfa44b3abf..43ab0c1041 100644 --- a/module/zanode/css/view.css +++ b/module/zanode/css/view.css @@ -12,5 +12,5 @@ .service-status{margin-top: 10px;} .vnc-detail{min-height: 60vh;} .vnc-mask{width: 100%;height:100%;background-color: rgba(0,0,0,0);position: absolute;} -#checkServiceStatus{cursor: pointer;display:inline-flex;align-items: center;} -.status-container{display: inline-flex;align-items: flex-start;} \ No newline at end of file +#checkServiceStatus{background-color:unset;} +.checkStatus{color: #313c52;} \ No newline at end of file diff --git a/module/zanode/js/view.js b/module/zanode/js/view.js index 30d42a1566..f1d48e4ea0 100644 --- a/module/zanode/js/view.js +++ b/module/zanode/js/view.js @@ -17,19 +17,61 @@ $('#checkServiceStatus').click(function(){ { if(key == "ZTF") { - $('.zenagent-status').text(zanodeLang.init[resultData.data[key]]) + if(resultData.data[key] == 'ready') + { + $('.dot-ztf').removeClass("text-danger") + $('.dot-ztf').addClass("text-success") + } + else{ + $('.dot-ztf').removeClass("text-success") + $('.dot-ztf').addClass("text-danger") + } + if(resultData.data[key] == 'ready' || resultData.data[key] == 'not_available') { + $('.ztf-status').text(zanodeLang.init[resultData.data[key]]) $('.ztf-install').text(zanodeLang.reinstall); } else { + if(resultData.data[key] == 'unknown') + { + $('.ztf-status').text(zanodeLang.init.unknown) + } + else + { + $('.ztf-status').text(zanodeLang.initializing) + } $('.ztf-install').text(zanodeLang.install); } } else { - $('.ztf-status').text(zanodeLang.init[resultData.data[key]]) + if(resultData.data[key] == 'ready') + { + $('.dot-zenagent').removeClass("text-danger") + $('.dot-zenagent').addClass("text-success") + } + else{ + $('.dot-zenagent').removeClass("text-success") + $('.dot-zenagent').addClass("text-danger") + } + $('.zenagent-status').text(zanodeLang.init[resultData.data[key]]) + if(resultData.data[key] == 'ready') + { + $('.node-init-install').show(); + } + else + { + if(resultData.data[key] == 'unknown') + { + $('.ztf-zenagent').text(zanodeLang.init.unknown) + } + else + { + $('.zenagent-status').text(zanodeLang.initializing) + } + } } if(resultData.data[key] !== 'ready') { @@ -39,11 +81,13 @@ $('#checkServiceStatus').click(function(){ if(!isSuccess) { - $('.init-fail').show(); + // $('.init-fail').show(); + $('.init-success').hide(); } else { $('.init-success').show(); + // $('.init-fail').hide(); } }); return diff --git a/module/zanode/lang/de.php b/module/zanode/lang/de.php index a406e03016..21af918a2f 100644 --- a/module/zanode/lang/de.php +++ b/module/zanode/lang/de.php @@ -22,7 +22,7 @@ $lang->zanode->start = 'Start After Created'; $lang->zanode->hostName = 'Host Name'; $lang->zanode->host = $lang->zanode->hostName; $lang->zanode->extranet = 'IP/Domain'; -$lang->zanode->sshAddress = 'SSH Address'; +$lang->zanode->sshAddress = 'SSH Command'; $lang->zanode->osArch = 'Arch'; $lang->zanode->cpuCores = 'CPU'; $lang->zanode->defaultUser = 'Default Account Name'; @@ -52,6 +52,7 @@ $lang->zanode->reinstall = "Reinstall"; $lang->zanode->copy = 'Click to copy'; $lang->zanode->copied = 'Copy successful'; $lang->zanode->manual = 'Manual'; +$lang->zanode->initializing = 'Initializing'; $lang->automation = new stdClass(); $lang->automation->scriptPath = $lang->zanode->scriptPath; @@ -100,6 +101,7 @@ $lang->zanode->init = new stdclass; $lang->zanode->init->statusTitle = "Service Status"; $lang->zanode->init->checkStatus = "Check Service Status"; $lang->zanode->init->not_install = "Not installed"; +$lang->zanode->init->unknown = "Unknown"; $lang->zanode->init->not_available = "Installed, Not Started"; $lang->zanode->init->ready = "Ready"; $lang->zanode->init->next = "Next"; diff --git a/module/zanode/lang/en.php b/module/zanode/lang/en.php index d380a1b4da..c5ee81e8ae 100644 --- a/module/zanode/lang/en.php +++ b/module/zanode/lang/en.php @@ -22,7 +22,7 @@ $lang->zanode->start = 'Start After Created'; $lang->zanode->hostName = 'Host Name'; $lang->zanode->host = $lang->zanode->hostName; $lang->zanode->extranet = 'IP/Domain'; -$lang->zanode->sshAddress = 'SSH Address'; +$lang->zanode->sshAddress = 'SSH Command'; $lang->zanode->osArch = 'Arch'; $lang->zanode->cpuCores = 'CPU'; $lang->zanode->defaultUser = 'Default Account Name'; @@ -52,6 +52,7 @@ $lang->zanode->reinstall = "Reinstall"; $lang->zanode->copy = 'Click to copy'; $lang->zanode->copied = 'Copy successful'; $lang->zanode->manual = 'Manual'; +$lang->zanode->initializing = 'Initializing'; $lang->automation = new stdClass(); $lang->automation->scriptPath = $lang->zanode->scriptPath; @@ -100,6 +101,7 @@ $lang->zanode->init = new stdClass(); $lang->zanode->init->statusTitle = "Service Status"; $lang->zanode->init->checkStatus = "Check Service Status"; $lang->zanode->init->not_install = "Not installed"; +$lang->zanode->init->unknown = "Unknown"; $lang->zanode->init->not_available = "Installed, Not Started"; $lang->zanode->init->ready = "Ready"; $lang->zanode->init->next = "Next"; diff --git a/module/zanode/lang/fr.php b/module/zanode/lang/fr.php index fcceafdad8..ef21330885 100644 --- a/module/zanode/lang/fr.php +++ b/module/zanode/lang/fr.php @@ -22,7 +22,7 @@ $lang->zanode->start = 'Start After Created'; $lang->zanode->hostName = 'Host Name'; $lang->zanode->host = $lang->zanode->hostName; $lang->zanode->extranet = 'IP/Domain'; -$lang->zanode->sshAddress = 'SSH Address'; +$lang->zanode->sshAddress = 'SSH Command'; $lang->zanode->osArch = 'Arch'; $lang->zanode->cpuCores = 'CPU'; $lang->zanode->defaultUser = 'Default Account Name'; @@ -52,6 +52,7 @@ $lang->zanode->reinstall = "Reinstall"; $lang->zanode->copy = 'Click to copy'; $lang->zanode->copied = 'Copy successful'; $lang->zanode->manual = 'Manual'; +$lang->zanode->initializing = 'Initializing'; $lang->automation = new stdClass(); $lang->automation->scriptPath = $lang->zanode->scriptPath; @@ -100,6 +101,7 @@ $lang->zanode->init = new stdclass; $lang->zanode->init->statusTitle = "Service Status"; $lang->zanode->init->checkStatus = "Check Service Status"; $lang->zanode->init->not_install = "Not installed"; +$lang->zanode->init->unknown = "Unknown"; $lang->zanode->init->not_available = "Installed, Not Started"; $lang->zanode->init->ready = "Ready"; $lang->zanode->init->next = "Next"; diff --git a/module/zanode/lang/zh-cn.php b/module/zanode/lang/zh-cn.php index 4f08ee3b4a..bcc0b5c9d1 100644 --- a/module/zanode/lang/zh-cn.php +++ b/module/zanode/lang/zh-cn.php @@ -22,7 +22,7 @@ $lang->zanode->start = '创建后自动开启'; $lang->zanode->hostName = '所属宿主机'; $lang->zanode->host = $lang->zanode->hostName; $lang->zanode->extranet = 'IP/域名'; -$lang->zanode->sshAddress = 'SSH地址'; +$lang->zanode->sshAddress = 'SSH命令'; $lang->zanode->osArch = '架构'; $lang->zanode->cpuCores = 'CPU'; $lang->zanode->defaultUser = '默认用户'; @@ -52,6 +52,7 @@ $lang->zanode->reinstall = "重装"; $lang->zanode->copy = '复制'; $lang->zanode->copied = '复制成功'; $lang->zanode->manual = '手册'; +$lang->zanode->initializing = '初始化中'; $lang->automation = new stdClass(); $lang->automation->scriptPath = $lang->zanode->scriptPath; @@ -100,6 +101,7 @@ $lang->zanode->init = new stdclass; $lang->zanode->init->statusTitle = "服务状态"; $lang->zanode->init->checkStatus = "检测服务状态"; $lang->zanode->init->not_install = "未安装"; +$lang->zanode->init->unknown = "未知"; $lang->zanode->init->not_available = "已安装,未启动"; $lang->zanode->init->ready = "已就绪"; $lang->zanode->init->next = "下一步"; diff --git a/module/zanode/view/view.html.php b/module/zanode/view/view.html.php index 1cd119398e..5524ffebfb 100644 --- a/module/zanode/view/view.html.php +++ b/module/zanode/view/view.html.php @@ -55,7 +55,7 @@ $account = strpos($zanode->osName, "windows") ? $config->zanode->defaultWinAccou
zanode->sshAddress; ?>:
-
ip; ?>
+
ssh ip . ' -p ' . $zanode->ssh; ?>
@@ -136,27 +136,26 @@ $account = strpos($zanode->osName, "windows") ? $config->zanode->defaultWinAccou $rebootAttr = "title='{$lang->zanode->reboot}' target='hiddenwin'"; $rebootAttr .= $zanode->status == 'shutoff' ? ' class="btn disabled"' : "class='btn' target='hiddenwin' onclick='if(confirm(\"{$lang->zanode->confirmReboot}\")==false) return false;'"; - common::printLink('zanode', 'getVNC', "id={$zanode->id}", " ", '_blank', "title='{$lang->zanode->getVNC}' class='btn desktop " . (in_array($zanode->status ,array('running', 'launch', 'wait')) ? '':'disabled') . "'", ''); + common::printLink('zanode', 'getVNC', "id={$zanode->id}", " " . $lang->zanode->getVNC, '_blank', "title='{$lang->zanode->getVNC}' class='btn desktop " . (in_array($zanode->status ,array('running', 'launch', 'wait')) ? '':'disabled') . "'", ''); if($zanode->status == "suspend") { - common::printLink('zanode', 'resume', "zanodeID={$zanode->id}", " ", '', $resumeAttr); + common::printLink('zanode', 'resume', "zanodeID={$zanode->id}", " " . $lang->zanode->resume, '', $resumeAttr); } else { - common::printLink('zanode', 'suspend', "zanodeID={$zanode->id}", " ", '', $suspendAttr); + common::printLink('zanode', 'suspend', "zanodeID={$zanode->id}", " " . $lang->zanode->suspend, '', $suspendAttr); } if($zanode->status == "shutoff") { - common::printLink('zanode', 'start', "zanodeID={$zanode->id}", " ", '', "class='btn '"); + common::printLink('zanode', 'start', "zanodeID={$zanode->id}", " " . $lang->zanode->boot, '', "class='btn '"); } else { - common::printLink('zanode', 'close', "zanodeID={$zanode->id}", " ", '', "class='btn '"); + common::printLink('zanode', 'close', "zanodeID={$zanode->id}", " " . $lang->zanode->shutdown, '', "class='btn '"); } - common::printLink('zanode', 'reboot', "zanodeID={$zanode->id}", " ", '', $rebootAttr); - common::printIcon('zanode', 'edit', "id={$zanode->id}", $zanode, 'list'); + common::printLink('zanode', 'reboot', "zanodeID={$zanode->id}", " " . $lang->zanode->reboot, '', $rebootAttr); } ?>
@@ -169,20 +168,20 @@ $account = strpos($zanode->osName, "windows") ? $config->zanode->defaultWinAccou
zanode->init->statusTitle; ?> - zanode->init->checkStatus; ?> +
- -   ZenAgent:   - zanode->init->not_install; ?> + +   ZenAgent   + zanode->initializing; ?>
- -   ZTF:   - zanode->init->not_install; ?>  - '>zanode->install ?> + +   ZTF   + zanode->initializing; ?>  + '>zanode->install ?>
From d5c211777af62c8d871360d3ac66369621644883 Mon Sep 17 00:00:00 2001 From: zhaoke Date: Thu, 29 Dec 2022 06:29:52 +0000 Subject: [PATCH 8/8] * Fix bug. --- module/zanode/control.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/module/zanode/control.php b/module/zanode/control.php index 54e35efa19..da6e028ffd 100644 --- a/module/zanode/control.php +++ b/module/zanode/control.php @@ -399,7 +399,7 @@ class zanode extends control { $node = $this->zanode->getNodeById($hostID); $serviceStatus = $this->zanode->getServiceStatus($node); - if ($node->status != 'running') + if ($node->status != 'running' && $node->status != 'wait') { $serviceStatus['ZenAgent'] = "unknown"; $serviceStatus['ZTF'] = "unknown";