@@ -19,7 +19,7 @@
' . $lang->goback, "data-app='{$app->tab}'", 'btn btn-secondary');?>
-
assetID;?>
+
id;?>
name;?>
deleted):?>
zahost->deleted;?>
diff --git a/module/zanode/config.php b/module/zanode/config.php
index 9c66a2b533..d156d0e8ec 100644
--- a/module/zanode/config.php
+++ b/module/zanode/config.php
@@ -30,7 +30,7 @@ $config->zanode->search['fields']['cpuCores'] = $lang->zanode->cpuCores;
$config->zanode->search['fields']['memory'] = $lang->zanode->memory;
$config->zanode->search['fields']['diskSize'] = $lang->zanode->diskSize;
$config->zanode->search['fields']['mac'] = $lang->zanode->mac;
-$config->zanode->search['fields']['address'] = $lang->zanode->ip;
+$config->zanode->search['fields']['extranet'] = $lang->zanode->extranet;
$config->zanode->search['params']['name'] = array('operator' => 'include', 'control' => 'input', 'values' => '');
$config->zanode->search['params']['osName'] = array('operator' => 'include', 'control' => 'input', 'values' => '');
$config->zanode->search['params']['host'] = array('operator' => '=', 'control' => 'select', 'values' => '');
diff --git a/module/zanode/control.php b/module/zanode/control.php
index a041089afe..bc06e56a26 100644
--- a/module/zanode/control.php
+++ b/module/zanode/control.php
@@ -24,7 +24,7 @@ class zanode extends control
* @access public
* @return void
*/
- public function browse($browseType = 'all', $param = 0, $orderBy = 'id_desc', $recTotal = 0, $recPerPage = 20, $pageID = 1)
+ public function browse($browseType = 'all', $param = 0, $orderBy = 't1.id_desc', $recTotal = 0, $recPerPage = 20, $pageID = 1)
{
$browseType = strtolower($browseType);
@@ -41,7 +41,7 @@ class zanode extends control
$this->config->zanode->search['actionURL'] = $actionURL;
$this->config->zanode->search['queryID'] = $queryID;
$this->config->zanode->search['onMenuBar'] = 'no';
- $this->config->zanode->search['params']['hostID']['values'] = array('' => '') + $hosts;
+ $this->config->zanode->search['params']['host']['values'] = array('' => '') + $hosts;
$this->loadModel('search')->setSearchParams($this->config->zanode->search);
$this->view->title = $this->lang->zanode->common;
@@ -78,7 +78,7 @@ class zanode extends control
}
/**
- * View VM.
+ * View Node.
*
* @param int $id
* @access public
@@ -87,7 +87,7 @@ class zanode extends control
public function view($id)
{
$this->view->title = $this->lang->zanode->view;
- $this->view->node = $this->zanode->getVMByID($id);
+ $this->view->zanode = $this->zanode->getNodeByID($id);
$this->view->actions = $this->loadModel('action')->getList('zanode', $id);
$this->view->users = $this->loadModel('user')->getPairs('noletter');
@@ -95,7 +95,7 @@ class zanode extends control
}
/**
- * Suspend VM.
+ * Suspend Node.
*
* @param int $nodeID
* @access public
@@ -103,11 +103,11 @@ class zanode extends control
*/
public function suspend($nodeID)
{
- $this->handleVM($nodeID, 'suspend');
+ $this->handleNode($nodeID, 'suspend');
}
/**
- * Reboot VM.
+ * Reboot Node.
*
* @param int $nodeID
* @access public
@@ -115,11 +115,11 @@ class zanode extends control
*/
public function reboot($nodeID)
{
- $this->handleVM($nodeID, 'reboot');
+ $this->handleNode($nodeID, 'reboot');
}
/**
- * Resume VM.
+ * Resume Node.
*
* @param int $nodeID
* @access public
@@ -127,7 +127,7 @@ class zanode extends control
*/
public function resume($nodeID)
{
- $this->handleVM($nodeID, 'resume');
+ $this->handleNode($nodeID, 'resume');
}
/**
@@ -137,9 +137,9 @@ class zanode extends control
* @param string $type
* @return void
*/
- public function handleVM($nodeID, $type)
+ public function handleNode($nodeID, $type)
{
- $error = $this->zanode->handleVM($nodeID, $type);
+ $error = $this->zanode->handleNode($nodeID, $type);
if($error)
{
diff --git a/module/zanode/css/view.css b/module/zanode/css/view.css
new file mode 100644
index 0000000000..dba5746e72
--- /dev/null
+++ b/module/zanode/css/view.css
@@ -0,0 +1,5 @@
+.zanode-detail .text-right{text-align: right;}
+.zanode-detail .col-8{padding-left: 10px;}
+.zanode-detail .detail-content{color: #838a9d;}
+.table.has-sort-head thead tr th a:after{line-height: 22px;}
+.table.has-sort-head thead tr th a:before{line-height: 22px;}
\ No newline at end of file
diff --git a/module/zanode/lang/de.php b/module/zanode/lang/de.php
index fc1e77afdb..bc35f47ab6 100644
--- a/module/zanode/lang/de.php
+++ b/module/zanode/lang/de.php
@@ -19,7 +19,7 @@ $lang->zanode->name = 'Name';
$lang->zanode->start = 'Start After Created';
$lang->zanode->hostName = 'Host Name';
$lang->zanode->host = $lang->zanode->hostName;
-$lang->zanode->ip = 'IP';
+$lang->zanode->extranet = 'IP/Domain';
$lang->zanode->osArch = 'Arch';
$lang->zanode->cpuCores = 'CPU Cores';
$lang->zanode->memory = 'Memory Size';
diff --git a/module/zanode/lang/en.php b/module/zanode/lang/en.php
index 9dad90038c..610d8d5581 100644
--- a/module/zanode/lang/en.php
+++ b/module/zanode/lang/en.php
@@ -19,7 +19,7 @@ $lang->zanode->name = 'Name';
$lang->zanode->start = 'Start After Created';
$lang->zanode->hostName = 'Host Name';
$lang->zanode->host = $lang->zanode->hostName;
-$lang->zanode->ip = 'IP';
+$lang->zanode->extranet = 'IP/Domain';
$lang->zanode->osArch = 'Arch';
$lang->zanode->cpuCores = 'CPU Cores';
$lang->zanode->memory = 'Memory Size';
diff --git a/module/zanode/lang/fr.php b/module/zanode/lang/fr.php
index fc1e77afdb..bc35f47ab6 100644
--- a/module/zanode/lang/fr.php
+++ b/module/zanode/lang/fr.php
@@ -19,7 +19,7 @@ $lang->zanode->name = 'Name';
$lang->zanode->start = 'Start After Created';
$lang->zanode->hostName = 'Host Name';
$lang->zanode->host = $lang->zanode->hostName;
-$lang->zanode->ip = 'IP';
+$lang->zanode->extranet = 'IP/Domain';
$lang->zanode->osArch = 'Arch';
$lang->zanode->cpuCores = 'CPU Cores';
$lang->zanode->memory = 'Memory Size';
diff --git a/module/zanode/lang/zh-cn.php b/module/zanode/lang/zh-cn.php
index 3a628171d0..84879d7768 100644
--- a/module/zanode/lang/zh-cn.php
+++ b/module/zanode/lang/zh-cn.php
@@ -19,7 +19,7 @@ $lang->zanode->name = '执行节点名称';
$lang->zanode->start = '创建后自动开启';
$lang->zanode->hostName = '所属宿主机';
$lang->zanode->host = $lang->zanode->hostName;
-$lang->zanode->ip = 'IP/域名';
+$lang->zanode->extranet = 'IP/域名';
$lang->zanode->osArch = '架构';
$lang->zanode->cpuCores = 'CPU核心数';
$lang->zanode->memory = '内存';
diff --git a/module/zanode/model.php b/module/zanode/model.php
index 046cd07d91..584aa93fda 100644
--- a/module/zanode/model.php
+++ b/module/zanode/model.php
@@ -236,7 +236,7 @@ class zanodemodel extends model
* @param object $pager
* @return void
*/
- public function getListByQuery($browseType = 'all', $param = 0, $orderBy = 'id_desc', $pager = null)
+ public function getListByQuery($browseType = 'all', $param = 0, $orderBy = 't1.id_desc', $pager = null)
{
$query = '';
if($browseType == 'bysearch')
@@ -246,12 +246,12 @@ class zanodemodel extends model
$query = $this->loadModel('search')->getQuery($param);
if($query)
{
- $this->session->set('vmQuery', $query->sql);
- $this->session->set('vmForm', $query->form);
+ $this->session->set('nodeQuery', $query->sql);
+ $this->session->set('nodeForm', $query->form);
}
else
{
- $this->session->set('vmQuery', ' 1 = 1');
+ $this->session->set('nodeQuery', ' 1 = 1');
}
}
else
@@ -264,9 +264,10 @@ class zanodemodel extends model
$query = str_replace('`status`', 't1.`status`', $query);
$query = str_replace('`os`', 't1.`os`', $query);
$query = str_replace('`parent`', 't1.`parent`', $query);
+ $query = str_replace('`hostID`', 't2.`id`', $query);
}
- return $this->dao->select('t1.*, t1.name as hostName, t2.extranet as hostIP,t3.osName')->from(TABLE_ZAHOST)->alias('t1')
+ return $this->dao->select('t1.*, t1.name as hostName, t2.extranet,t3.osName')->from(TABLE_ZAHOST)->alias('t1')
->leftJoin(TABLE_ZAHOST)->alias('t2')->on('t1.parent = t2.id')
->leftJoin(TABLE_IMAGE)->alias('t3')->on('t3.id = t1.image')
->where('t1.deleted')->eq(0)
@@ -436,4 +437,19 @@ class zanodemodel extends model
$returnData->token = $result->data->token;
return $returnData;
}
+
+ public function buildOperateMenu($node)
+ {
+ if($node->deleted) return '';
+
+ $menu = '';
+ $params = "id=$node->id";
+
+ $menu .= $this->buildMenu('zanode', 'edit', $params, $node, 'view');
+
+ $params = "id=$node->id";
+ $menu .= $this->buildMenu('zanode', 'delete', $params, $node, 'view', 'trash', 'hiddenwin');
+
+ return $menu;
+ }
}
diff --git a/module/zanode/view/browse.html.php b/module/zanode/view/browse.html.php
index e8f81e4137..3138ea4ec2 100644
--- a/module/zanode/view/browse.html.php
+++ b/module/zanode/view/browse.html.php
@@ -1,4 +1,5 @@
-getModuleRoot() . 'common/view/header.html.php';?>
-zanode->confirmDelete)?>
-zanode->confirmBoot)?>
-zanode->confirmReboot)?>
-zanode->confirmShutdown)?>
-zanode->actionSuccess)?>
+getModuleRoot() . 'common/view/header.html.php'; ?>
+zanode->confirmDelete) ?>
+zanode->confirmBoot) ?>
+zanode->confirmReboot) ?>
+zanode->confirmShutdown) ?>
+zanode->actionSuccess) ?>
-
' data-module='zanode'>
-
-recTotal}&recPerPage={$pager->recPerPage}";?>
-
-
-
-
- zanode->empty;?>
- ' . $lang->zanode->create, '', 'class="btn btn-info"');?>
-
+
+
-
-
-
-
- | idAB);?> |
- zanode->name);?> |
- zanode->extranet);?> |
- zanode->cpuCores);?> |
- zanode->memory);?> |
- zanode->diskSize);?> |
- zanode->osName);?> |
- zanode->status);?> |
- zanode->hostName);?>
- | actions?> |
-
-
-
-
-
- | id;?> |
- name;?> |
- hostIP;?> |
- zanode->os->cpu, $node->cpu);?> |
- memory . $this->lang->zahost->unitList['GB'];?> |
- disk . zget($this->lang->zahost->unitList, $node->unit);?> |
- zanode->os->list, $node->os);?> |
- zanode->statusList, $node->status);?> |
- hostName;?> |
-
- zanode->suspend}' class='btn btn-primary' target='hiddenwin'";
- $suspendAttr .= $node->status == 'suspend' ? ' disabled' : " target='hiddenwin' onclick='if(confirm(\"{$lang->zanode->confirmSuspend}\")==false) return false;'";
+
+
+ ' data-module='zanode'>
+
+ recTotal}&recPerPage={$pager->recPerPage}"; ?>
+
+
+
+
+ zanode->empty; ?>
+ ' . $lang->zanode->create, '', 'class="btn btn-info"'); ?>
+
+
+
+
+
+
+ | idAB); ?> |
+ zanode->name); ?> |
+ zanode->extranet); ?> |
+ zanode->cpuCores); ?> |
+ zanode->memory); ?> |
+ zanode->diskSize); ?> |
+ zanode->osName); ?> |
+ zanode->status); ?> |
+ zanode->hostName); ?>
+ | actions ?> |
+
+
+
+
+
+ | id; ?> |
+ inlink('view', "id=$node->id"), $node->name, '', ""); ?> |
+ extranet; ?> |
+ zanode->os->cpuCores, $node->cpuCores); ?> |
+ memory . $this->lang->zahost->unitList['GB']; ?> |
+ diskSize . $this->lang->zahost->unitList['GB']; ?> |
+ osName; ?> |
+ zanode->statusList, $node->status); ?> |
+ hostName; ?> |
+
+ zanode->suspend}' class='btn btn-primary' target='hiddenwin'";
+ $suspendAttr .= $node->status == 'suspend' ? ' disabled' : " target='hiddenwin' onclick='if(confirm(\"{$lang->zanode->confirmSuspend}\")==false) return false;'";
- $resumeAttr = "title='{$lang->zanode->resume}' class='btn btn-primary' target='hiddenwin'";
- $resumeAttr .= $node->status == 'running' ? 'disabled' : " target='hiddenwin' onclick='if(confirm(\"{$lang->zanode->confirmResume}\")==false) return false;'";
- $rebootAttr = "title='{$lang->zanode->reboot}' class='btn btn-primary' target='hiddenwin'";
- $rebootAttr .= $node->status == 'suspend' ? ' disabled' : " target='hiddenwin' onclick='if(confirm(\"{$lang->zanode->confirmReboot}\")==false) return false;'";
- common::printLink('zanode', 'suspend', "zanodeID={$node->id}", " ", '', $suspendAttr);
- common::printLink('zanode', 'resume', "zanodeID={$node->id}", " ", '', $resumeAttr);
- common::printLink('zanode', 'reboot', "zanodeID={$node->id}", " ", '', $rebootAttr);
- common::printLink('zanode', 'destroy', "zanodeID={$node->id}", " ", '', "title='{$lang->zanode->destroy}' class='btn btn-primary' target='hiddenwin' onclick='if(confirm(\"{$lang->zanode->confirmDelete}\")==false) return false;'");
- ?>
- |
-
-
-
-
+ $resumeAttr = "title='{$lang->zanode->resume}' class='btn btn-primary' target='hiddenwin'";
+ $resumeAttr .= $node->status == 'running' ? 'disabled' : " target='hiddenwin' onclick='if(confirm(\"{$lang->zanode->confirmResume}\")==false) return false;'";
+ $rebootAttr = "title='{$lang->zanode->reboot}' class='btn btn-primary' target='hiddenwin'";
+ $rebootAttr .= $node->status == 'suspend' ? ' disabled' : " target='hiddenwin' onclick='if(confirm(\"{$lang->zanode->confirmReboot}\")==false) return false;'";
+ common::printLink('zanode', 'suspend', "zanodeID={$node->id}", " ", '', $suspendAttr);
+ common::printLink('zanode', 'resume', "zanodeID={$node->id}", " ", '', $resumeAttr);
+ common::printLink('zanode', 'reboot', "zanodeID={$node->id}", " ", '', $rebootAttr);
+ common::printLink('zanode', 'destroy', "zanodeID={$node->id}", " ", '', "title='{$lang->zanode->destroy}' class='btn btn-primary' target='hiddenwin' onclick='if(confirm(\"{$lang->zanode->confirmDelete}\")==false) return false;'");
+ ?>
+ |
+
+
+
+
-
+
-getModuleRoot() . 'common/view/footer.html.php';?>
+getModuleRoot() . 'common/view/footer.html.php'; ?>
\ No newline at end of file
diff --git a/module/zanode/view/view.html.php b/module/zanode/view/view.html.php
index 366af00a58..52a6c292ac 100644
--- a/module/zanode/view/view.html.php
+++ b/module/zanode/view/view.html.php
@@ -1,79 +1,119 @@
- * @package host
- * @version $Id$
+ * @author Ke Zhao
+ * @package zanode
+ * @version $Id: view.html.php $
* @link http://www.zentao.net
*/
?>
-getModuleRoot() . 'common/view/header.html.php';?>
-vm->confirmDelete)?>
-vm->confirmBoot)?>
-vm->confirmReboot)?>
-vm->confirmShutdown)?>
-vm->actionSuccess)?>
-
-
-
vm->view;?>
-
-
-
-
-
- | vm->name;?> |
- name;?> |
- | |
-
-
- | vm->osType;?> |
- vm->os->type[$vm->osCategory][$vm->osType];?> |
- vm->osCategory;?> |
- vm->os->list[$vm->osCategory];?> |
-
-
- | vm->osVersion;?> |
- vm->versionList[$vm->osType][$vm->osVersion];?> |
- vm->osLang;?> |
- vm->langList[$vm->osLang];?> |
-
-
- | vm->ip;?> |
- ip;?> |
- vm->macAddress;?> |
- macAddress;?> |
-
-
- | vm->vnc;?> |
- vnc;?> |
- vm->status;?> |
- vm->statusList, $vm->status);?> |
-
-
- | vm->createdDate;?> |
- createdDate;?> |
- vm->destroyAt;?> |
- destroyAt;?> |
-
-
-
- getModuleRoot() . 'common/view/action.html.php'?>
-
-