mirror of
https://github.com/apache/cloudstack.git
synced 2025-11-02 20:02:29 +01:00
Merge branch 'master' of ssh://git.cloud.com/var/lib/git/cloudstack-oss
This commit is contained in:
commit
f58e15d009
@ -394,7 +394,7 @@ def checkIscsi(session, args):
|
||||
rdevpath = rdevpath.replace(".", "")
|
||||
rdevpath = rdevpath.replace("/", "")
|
||||
rdevpath = "/block/" + rdevpath
|
||||
cmd = ["scsi_id", "-g", "-s", rdevpath ]
|
||||
cmd = ["scsi_id", "-g", "-u", "-s", rdevpath ]
|
||||
txt = util.pread2(cmd)
|
||||
txt = txt.replace("\n", "")
|
||||
if scsiid == txt:
|
||||
|
||||
@ -961,6 +961,7 @@ public class NetworkManagerImpl implements NetworkManager {
|
||||
instanceIds.add(instanceIdParam);
|
||||
}
|
||||
|
||||
// FIXME: We should probably lock the load balancer here to prevent multiple updates...
|
||||
LoadBalancerVO loadBalancer = _loadBalancerDao.findById(loadBalancerId);
|
||||
if (loadBalancer == null) {
|
||||
throw new InvalidParameterValueException("Failed to assign to load balancer " + loadBalancerId + ", the load balancer was not found.");
|
||||
@ -995,9 +996,12 @@ public class NetworkManagerImpl implements NetworkManager {
|
||||
}
|
||||
}
|
||||
|
||||
List<Long> finalInstanceIds = new ArrayList<Long>();
|
||||
for (Long instanceId : instanceIds) {
|
||||
if (mappedInstanceIds.contains(instanceId)) {
|
||||
continue;
|
||||
} else {
|
||||
finalInstanceIds.add(instanceId);
|
||||
}
|
||||
|
||||
UserVmVO userVm = _vmDao.findById(instanceId);
|
||||
@ -1125,6 +1129,14 @@ public class NetworkManagerImpl implements NetworkManager {
|
||||
}
|
||||
if ((updatedRules != null) && (updatedRules.size() == firewallRulesToApply.size())) {
|
||||
// flag the instances as mapped to the load balancer
|
||||
for (Long addedInstanceId : finalInstanceIds) {
|
||||
LoadBalancerVMMapVO mappedVM = new LoadBalancerVMMapVO(loadBalancerId, addedInstanceId);
|
||||
_loadBalancerVMMapDao.persist(mappedVM);
|
||||
}
|
||||
|
||||
/* We used to add these instances as pending when the API command is received on the server, and once they were applied,
|
||||
* the pending status was removed. In the 2.2 API framework, this is no longer done and instead the new mappings just
|
||||
* need to be persisted
|
||||
List<LoadBalancerVMMapVO> pendingMappedVMs = _loadBalancerVMMapDao.listByLoadBalancerId(loadBalancerId, true);
|
||||
for (LoadBalancerVMMapVO pendingMappedVM : pendingMappedVMs) {
|
||||
if (instanceIds.contains(pendingMappedVM.getInstanceId())) {
|
||||
@ -1133,6 +1145,7 @@ public class NetworkManagerImpl implements NetworkManager {
|
||||
_loadBalancerVMMapDao.update(pendingMappedVM.getId(), pendingMappedVMForUpdate);
|
||||
}
|
||||
}
|
||||
*/
|
||||
|
||||
for (FirewallRuleVO updatedRule : updatedRules) {
|
||||
if (updatedRule.getId() == null) {
|
||||
|
||||
@ -5115,27 +5115,46 @@ public class ManagementServerImpl implements ManagementServer {
|
||||
accountId = account.getId();
|
||||
}
|
||||
|
||||
Filter searchFilter = new Filter(SnapshotVO.class, "created", false, cmd.getStartIndex(), cmd.getPageSizeVal());
|
||||
SearchCriteria<SnapshotVO> sc = _snapshotDao.createSearchCriteria();
|
||||
|
||||
Object name = cmd.getSnapshotName();
|
||||
Object id = cmd.getId();
|
||||
Object keyword = cmd.getKeyword();
|
||||
Object snapshotTypeStr = cmd.getSnapshotType();
|
||||
String interval = cmd.getIntervalType();
|
||||
|
||||
sc.addAnd("status", SearchCriteria.Op.EQ, Snapshot.Status.BackedUp);
|
||||
Filter searchFilter = new Filter(SnapshotVO.class, "created", false, cmd.getStartIndex(), cmd.getPageSizeVal());
|
||||
SearchBuilder<SnapshotVO> sb = _snapshotDao.createSearchBuilder();
|
||||
sb.and("status", sb.entity().getStatus(), SearchCriteria.Op.EQ);
|
||||
sb.and("volumeId", sb.entity().getVolumeId(), SearchCriteria.Op.EQ);
|
||||
sb.and("name", sb.entity().getName(), SearchCriteria.Op.LIKE);
|
||||
sb.and("id", sb.entity().getId(), SearchCriteria.Op.EQ);
|
||||
sb.and("accountId", sb.entity().getAccountId(), SearchCriteria.Op.EQ);
|
||||
sb.and("snapshotTypeEQ", sb.entity().getSnapshotType(), SearchCriteria.Op.EQ);
|
||||
sb.and("snapshotTypeNEQ", sb.entity().getSnapshotType(), SearchCriteria.Op.NEQ);
|
||||
|
||||
if ((accountId == null) && (domainId != null)) {
|
||||
// if accountId isn't specified, we can do a domain match for the admin case
|
||||
SearchBuilder<AccountVO> accountSearch = _accountDao.createSearchBuilder();
|
||||
sb.join("accountSearch", accountSearch, sb.entity().getAccountId(), accountSearch.entity().getId(), JoinType.INNER);
|
||||
|
||||
SearchBuilder<DomainVO> domainSearch = _domainDao.createSearchBuilder();
|
||||
domainSearch.and("path", domainSearch.entity().getPath(), SearchCriteria.Op.LIKE);
|
||||
accountSearch.join("domainSearch", domainSearch, accountSearch.entity().getDomainId(), domainSearch.entity().getId(), JoinType.INNER);
|
||||
}
|
||||
|
||||
SearchCriteria<SnapshotVO> sc = sb.create();
|
||||
|
||||
sc.setParameters("status", Snapshot.Status.BackedUp);
|
||||
|
||||
if (volumeId != null) {
|
||||
sc.addAnd("volumeId", SearchCriteria.Op.EQ, volumeId);
|
||||
sc.setParameters("volumeId", volumeId);
|
||||
}
|
||||
|
||||
|
||||
if (name != null) {
|
||||
sc.addAnd("name", SearchCriteria.Op.LIKE, "%" + name + "%");
|
||||
sc.setParameters("name", "%" + name + "%");
|
||||
}
|
||||
|
||||
if (id != null) {
|
||||
sc.addAnd("id", SearchCriteria.Op.EQ, id);
|
||||
sc.setParameters("id", SearchCriteria.Op.EQ, id);
|
||||
}
|
||||
|
||||
if (keyword != null) {
|
||||
@ -5144,9 +5163,13 @@ public class ManagementServerImpl implements ManagementServer {
|
||||
|
||||
sc.addAnd("name", SearchCriteria.Op.SC, ssc);
|
||||
}
|
||||
|
||||
|
||||
if (accountId != null) {
|
||||
sc.addAnd("accountId", SearchCriteria.Op.EQ, accountId);
|
||||
sc.setParameters("accountId", accountId);
|
||||
} else if (domainId != null) {
|
||||
DomainVO domain = _domainDao.findById((Long)domainId);
|
||||
SearchCriteria joinSearch = sc.getJoin("accountSearch");
|
||||
joinSearch.setJoinParameters("domainSearch", "path", domain.getPath() + "%");
|
||||
}
|
||||
|
||||
if (snapshotTypeStr != null) {
|
||||
@ -5154,10 +5177,10 @@ public class ManagementServerImpl implements ManagementServer {
|
||||
if (snapshotType == null) {
|
||||
throw new InvalidParameterValueException("Unsupported snapshot type " + snapshotTypeStr);
|
||||
}
|
||||
sc.addAnd("snapshotType", SearchCriteria.Op.EQ, snapshotType.ordinal());
|
||||
sc.setParameters("snapshotTypeEQ", snapshotType.ordinal());
|
||||
} else {
|
||||
// Show only MANUAL and RECURRING snapshot types
|
||||
sc.addAnd("snapshotType", SearchCriteria.Op.NEQ, Snapshot.SnapshotType.TEMPLATE.ordinal());
|
||||
sc.setParameters("snapshotTypeNEQ", Snapshot.SnapshotType.TEMPLATE.ordinal());
|
||||
}
|
||||
|
||||
return _snapshotDao.search(sc, searchFilter);
|
||||
|
||||
@ -42,7 +42,7 @@ a:link, a:visited {
|
||||
|
||||
}
|
||||
|
||||
a:visited {
|
||||
a:hover {
|
||||
text-decoration:underline;
|
||||
}
|
||||
|
||||
@ -1479,11 +1479,11 @@ a:visited {
|
||||
}
|
||||
|
||||
.leftmenu_arrows_firstlevel_open {
|
||||
width:9px;
|
||||
height:9px;
|
||||
width:14px;
|
||||
height:12px;
|
||||
float:right;
|
||||
margin:2px 4px 0 0;
|
||||
background:url(../images/leftmenu_openarrow.png) no-repeat top left;
|
||||
margin:0 4px 0 0;
|
||||
background:url(../images/leftmenu_maindownarrow.png) no-repeat top left;
|
||||
padding:0;
|
||||
}
|
||||
|
||||
@ -3324,7 +3324,7 @@ a:hover.search_button {
|
||||
border:1px solid #999;
|
||||
position:absolute;
|
||||
top:5px;
|
||||
left:8px;
|
||||
left:20px;
|
||||
margin:0;
|
||||
padding:0 0 10px 0;
|
||||
}
|
||||
@ -3338,6 +3338,34 @@ a:hover.search_button {
|
||||
padding:0;
|
||||
}
|
||||
|
||||
.networkswitch_infodropdown_actionbox {
|
||||
width:192px;
|
||||
height:auto;
|
||||
float:left;
|
||||
margin:5px 0 0 0;
|
||||
display:inline;
|
||||
padding:0;
|
||||
}
|
||||
|
||||
.networkswitch_infodropdown_actionbox a {
|
||||
float:right;
|
||||
color:#2c8bbc;
|
||||
font-size:10px;
|
||||
font-weight:normal;
|
||||
text-align:left;
|
||||
margin:0 7px 0 0;
|
||||
padding:0;
|
||||
text-decoration:none;
|
||||
}
|
||||
|
||||
.networkswitch_infodropdown_actionbox a:link, .networkswitch_infodropdown_actionbox a:visited {
|
||||
text-decoration:none;
|
||||
|
||||
}
|
||||
|
||||
.networkswitch_infodropdown_actionbox a:hover {
|
||||
text-decoration:underline;
|
||||
}
|
||||
.networkswitch_infodropdown_textbox li{
|
||||
width:180px;
|
||||
height:auto;
|
||||
@ -3365,7 +3393,7 @@ a:hover.search_button {
|
||||
height:15px;
|
||||
float:left;
|
||||
background:url(../images/networkswitch_infoicon.gif) no-repeat top left;
|
||||
margin:-12px 0 0 20px;
|
||||
margin:-12px 0 0 10px;
|
||||
display:inline;
|
||||
padding:0;
|
||||
cursor:pointer;
|
||||
@ -3431,7 +3459,7 @@ a:hover.search_button {
|
||||
width:45px;
|
||||
height:21px;
|
||||
float:left;
|
||||
margin:-22px 0 0 38px;
|
||||
margin:-22px 0 0 29px;
|
||||
padding:0;
|
||||
}
|
||||
|
||||
@ -3447,15 +3475,15 @@ a:hover.search_button {
|
||||
width:12px;
|
||||
height:12px;
|
||||
float:left;
|
||||
background:url(../images/search_closeicon.gif) no-repeat top left;
|
||||
margin:-22px 0 0 10px;
|
||||
background:url(../images/search_closeicon_hover.gif) no-repeat top left;
|
||||
margin:0 0 0 0;
|
||||
padding:0;
|
||||
cursor:hand;
|
||||
cursor:pointer;
|
||||
}
|
||||
|
||||
.networkswitch_closeicon{
|
||||
background:url(../images/search_closeicon_hover.gif) no-repeat top left;
|
||||
.networkswitch_closeicon:hover{
|
||||
background:url(../images/search_closeicon.gif) no-repeat top left;
|
||||
}
|
||||
|
||||
|
||||
|
||||
BIN
ui/new/images/leftmenu_maindownarrow.png
Normal file
BIN
ui/new/images/leftmenu_maindownarrow.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 588 B |
Binary file not shown.
|
Before Width: | Height: | Size: 379 B After Width: | Height: | Size: 375 B |
Binary file not shown.
|
Before Width: | Height: | Size: 1.4 KiB After Width: | Height: | Size: 1.4 KiB |
@ -686,9 +686,9 @@ long milliseconds = new Date().getTime();
|
||||
<div class="leftmenu_content" id="header">
|
||||
<div class="leftmenu_thirdindent">
|
||||
<div class="leftmenu_arrows expanded_close" id="zone_arrow">
|
||||
</div>
|
||||
|
||||
Zone: <strong><span id="zone_name"></span></strong>
|
||||
</div>
|
||||
<span id="zone_name_label">Zone: </span>
|
||||
<span id="zone_name"></span>
|
||||
</div>
|
||||
</div>
|
||||
<div id="zone_content" style="display: none">
|
||||
@ -710,9 +710,9 @@ long milliseconds = new Date().getTime();
|
||||
<div class="leftmenu_content" id="header">
|
||||
<div class="leftmenu_fourthindent">
|
||||
<div class="leftmenu_arrows expanded_close" id="pod_arrow">
|
||||
</div>
|
||||
|
||||
Pod: <strong><span id="pod_name"></span></strong>
|
||||
</div>
|
||||
<span id="pod_name_label">Pod: </span>
|
||||
<span id="pod_name"></span>
|
||||
</div>
|
||||
</div>
|
||||
<div id="pod_content" style="display: none">
|
||||
@ -732,9 +732,9 @@ long milliseconds = new Date().getTime();
|
||||
<div class="leftmenu_content" id="header">
|
||||
<div class="leftmenu_fifthindent">
|
||||
<div class="leftmenu_arrows white_nonexpanded_close" id="cluster_arrow">
|
||||
</div>
|
||||
|
||||
Cluster: <strong><span id="cluster_name"></span></strong>
|
||||
</div>
|
||||
<span id="cluster_name_label">Cluster: </span>
|
||||
<span id="cluster_name"></span>
|
||||
</div>
|
||||
</div>
|
||||
<div id="cluster_content">
|
||||
@ -752,9 +752,9 @@ long milliseconds = new Date().getTime();
|
||||
<div class="leftmenu_content" id="header">
|
||||
<div class="leftmenu_fourthindent">
|
||||
<div class="leftmenu_arrows white_nonexpanded_close" id="systemvm_arrow">
|
||||
</div>
|
||||
|
||||
System VM: <strong><span id="systemvm_name"></span></strong>
|
||||
</div>
|
||||
<span id="systemvm_name_label">System VM: </span>
|
||||
<span id="systemvm_name"></span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@ -762,18 +762,18 @@ long milliseconds = new Date().getTime();
|
||||
<!-- SystemVM Template (end) -->
|
||||
<!-- domain tree node template (begin) -->
|
||||
<div id="domain_tree_node_template" style="display:none">
|
||||
<div class="leftmenu_domainindent" style="margin-left: 30px;">
|
||||
|
||||
<div id="domain_title_container" class="leftmenu_content">
|
||||
<div class="tree_levels">
|
||||
<div class="leftmenu_domainindent" id="domain_indent">
|
||||
<div class="leftmenu_arrows expanded_close" id="domain_expand_icon">
|
||||
</div>
|
||||
<div id="domain_name" class="tree_links">
|
||||
Domain Name</div>
|
||||
</div>
|
||||
<span id="domain_name">
|
||||
Domain Name</span>
|
||||
</div>
|
||||
</div>
|
||||
<div id="domain_children_container" style="display: none">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<!-- domain tree node template (end) -->
|
||||
<!-- ***** templates (end) *************************************************************************************************-->
|
||||
|
||||
@ -982,10 +982,14 @@
|
||||
<!-- Direct VLAN Template (begin) -->
|
||||
<div class="networkswitch_vlanpanel" id="direct_vlan_template" style="display: none;">
|
||||
<div class="networkswitch_vlanconnect">
|
||||
<div class="networkswitch_closeicon"></div>
|
||||
<div class="networkswitch_vlan_infoicon">
|
||||
|
||||
</div>
|
||||
<div class="networkswitch_infodropdown" style="display:none;">
|
||||
<div class="networkswitch_infodropdown_actionbox">
|
||||
<a href="#">Close</a>
|
||||
</div>
|
||||
<ul class="networkswitch_infodropdown_textbox">
|
||||
<li><div class="networkswitch_infodropdown_textbox_label">Zone</div>: NC </li>
|
||||
<li><div class="networkswitch_infodropdown_textbox_label">Network Type</div>: Root</li>
|
||||
|
||||
@ -20,24 +20,7 @@
|
||||
|
||||
var $selectedDomainTreeNode;
|
||||
|
||||
function afterLoadDomainJSP() {
|
||||
//testing code
|
||||
/*
|
||||
$("#leftmenu_domain_tree").empty();
|
||||
var $newNode01 = $("#domain_tree_node_template").clone();
|
||||
$newNode01.find("#domain_name").text("01")
|
||||
var $newNode02 = $("#domain_tree_node_template").clone();
|
||||
$newNode02.find("#domain_name").text("02")
|
||||
var $newNode03 = $("#domain_tree_node_template").clone();
|
||||
$newNode03.find("#domain_name").text("03");
|
||||
$("#leftmenu_domain_tree").append($newNode01.show());
|
||||
$newNode01.find("#domain_children_container").append($newNode02.show());
|
||||
$newNode01.find("#domain_children_container").show();
|
||||
$newNode02.find("#domain_children_container").append($newNode03.show());
|
||||
$newNode02.find("#domain_children_container").show();
|
||||
*/
|
||||
|
||||
|
||||
function afterLoadDomainJSP() {
|
||||
var defaultRootDomainId = g_domainid;
|
||||
var defaultRootLevel = 0;
|
||||
var childParentMap = {}; //map childDomainId to parentDomainId
|
||||
@ -53,7 +36,8 @@ function afterLoadDomainJSP() {
|
||||
childParentMap[json.id] = json.parentdomainid; //map childDomainId to parentDomainId
|
||||
domainIdNameMap[json.id] = json.name; //map domainId to domainName
|
||||
|
||||
var template = $treenodeTemplate.clone(true);
|
||||
var template = $treenodeTemplate.clone(true);
|
||||
template.find("#domain_indent").css("marginLeft", (30*(level+1)));
|
||||
template.attr("id", "domain_"+json.id);
|
||||
template.data("jsonObj", json).data("domainLevel", level);
|
||||
template.find("#domain_title_container").attr("id", "domain_title_container_"+json.id);
|
||||
@ -74,7 +58,7 @@ function afterLoadDomainJSP() {
|
||||
if (domains != null && domains.length > 0) {
|
||||
for (var i = 0; i < domains.length; i++) {
|
||||
drawNode(domains[i], level, container);
|
||||
if(domains[i].haschild=="true")
|
||||
if(domains[i].haschild == true)
|
||||
drawTree(domains[i].id, (level+1), $("#domain_children_container_"+domains[i].id));
|
||||
}
|
||||
}
|
||||
|
||||
@ -72,38 +72,48 @@ function buildZoneTree() {
|
||||
}
|
||||
break;
|
||||
|
||||
|
||||
|
||||
case "zone_name_label":
|
||||
case "zone_name":
|
||||
selectLeftMenu(target.parent().parent().parent());
|
||||
var jsonObj = target.data("jsonObj");
|
||||
selectTreeNodeInLeftMenu(target.parent().parent().parent());
|
||||
var jsonObj = target.parent().parent().parent().parent().data("jsonObj");
|
||||
showPage($("#zone_page"), jsonObj);
|
||||
hideMiddleMenu();
|
||||
zoneJsonToRightPanel(jsonObj);
|
||||
break;
|
||||
|
||||
case "pod_name_label" :
|
||||
case "pod_name" :
|
||||
selectLeftMenu(target.parent().parent().parent());
|
||||
var jsonObj = target.data("jsonObj");
|
||||
selectTreeNodeInLeftMenu(target.parent().parent().parent());
|
||||
var jsonObj = target.parent().parent().parent().parent().data("jsonObj");
|
||||
showPage($("#pod_page"), jsonObj);
|
||||
hideMiddleMenu();
|
||||
showMiddleMenu();
|
||||
podJsonToDetailsTab(jsonObj);
|
||||
break;
|
||||
|
||||
var podId = jsonObj.id;
|
||||
$("#midmenu_container").empty();
|
||||
listMidMenuItems2(("listHosts&type=Routing&podid="+podId), "listhostsresponse", "host", hostToMidmenu, hostToRigntPanel, hostGetMidmenuId, true);
|
||||
listMidMenuItems2(("listStoragePools&podid="+podId), "liststoragepoolsresponse", "storagepool", primarystorageToMidmenu, primarystorageToRigntPanel, primarystorageGetMidmenuId, false);
|
||||
break;
|
||||
|
||||
case "cluster_name_label" :
|
||||
case "cluster_name" :
|
||||
selectLeftMenu(target.parent().parent().parent());
|
||||
var jsonObj = target.data("jsonObj");
|
||||
selectTreeNodeInLeftMenu(target.parent().parent().parent());
|
||||
var jsonObj = target.parent().parent().parent().parent().data("jsonObj");
|
||||
showPage($("#cluster_page"), jsonObj);
|
||||
showMiddleMenu();
|
||||
clusterJsonToDetailsTab(jsonObj);
|
||||
|
||||
var clusterId = jsonObj.id;
|
||||
$("#midmenu_container").empty();
|
||||
listMidMenuItems2(("listHosts&clusterid="+clusterId), "listhostsresponse", "host", hostToMidmenu, hostToRigntPanel, hostGetMidmenuId, true);
|
||||
listMidMenuItems2(("listHosts&type=Routing&clusterid="+clusterId), "listhostsresponse", "host", hostToMidmenu, hostToRigntPanel, hostGetMidmenuId, true);
|
||||
listMidMenuItems2(("listStoragePools&clusterid="+clusterId), "liststoragepoolsresponse", "storagepool", primarystorageToMidmenu, primarystorageToRigntPanel, primarystorageGetMidmenuId, false);
|
||||
break;
|
||||
|
||||
case "systemvm_name_label" :
|
||||
case "systemvm_name" :
|
||||
selectLeftMenu(target.parent().parent().parent());
|
||||
var jsonObj = target.data("jsonObj");
|
||||
selectTreeNodeInLeftMenu(target.parent().parent().parent());
|
||||
var jsonObj = target.parent().parent().parent().parent().data("jsonObj");
|
||||
showPage($("#systemvm_page"), jsonObj);
|
||||
hideMiddleMenu();
|
||||
systemvmJsonToDetailsTab(jsonObj);
|
||||
@ -117,9 +127,17 @@ function buildZoneTree() {
|
||||
//***** build zone tree (end) *************************************************************************************************
|
||||
}
|
||||
|
||||
function selectTreeNodeInLeftMenu($menuToSelect, expandable) {
|
||||
if($selectedLeftMenu != null)
|
||||
$selectedLeftMenu.removeClass("selected");
|
||||
$menuToSelect.addClass("selected");
|
||||
$selectedLeftMenu = $menuToSelect;
|
||||
}
|
||||
|
||||
function zoneJSONToTreeNode(json, $zoneNode) {
|
||||
var zoneid = json.id;
|
||||
$zoneNode.attr("id", "zone_" + zoneid);
|
||||
$zoneNode.data("jsonObj", json);
|
||||
$zoneNode.data("id", zoneid).data("name", fromdb(json.name));
|
||||
var zoneName = $zoneNode.find("#zone_name").text(fromdb(json.name));
|
||||
zoneName.data("jsonObj", json);
|
||||
@ -162,7 +180,8 @@ function zoneJSONToTreeNode(json, $zoneNode) {
|
||||
|
||||
function podJSONToTreeNode(json, $podNode) {
|
||||
var podid = json.id;
|
||||
$podNode.attr("id", "pod_" + podid);
|
||||
$podNode.attr("id", "pod_" + podid);
|
||||
$podNode.data("jsonObj", json);
|
||||
$podNode.data("id", podid).data("name", fromdb(json.name));
|
||||
|
||||
var podName = $podNode.find("#pod_name").text(fromdb(json.name));
|
||||
@ -189,6 +208,7 @@ function podJSONToTreeNode(json, $podNode) {
|
||||
function systemvmJSONToTreeNode(json, $systemvmNode) {
|
||||
var systemvmid = json.id;
|
||||
$systemvmNode.attr("id", "systemvm_"+systemvmid);
|
||||
$systemvmNode.data("jsonObj", json);
|
||||
$systemvmNode.data("id", systemvmid).data("name", json.name);
|
||||
var systeymvmName = $systemvmNode.find("#systemvm_name").text(json.name);
|
||||
systeymvmName.data("jsonObj", json);
|
||||
@ -196,6 +216,7 @@ function systemvmJSONToTreeNode(json, $systemvmNode) {
|
||||
|
||||
function clusterJSONToTreeNode(json, $clusterNode) {
|
||||
$clusterNode.attr("id", "cluster_"+json.id);
|
||||
$clusterNode.data("jsonObj", json);
|
||||
$clusterNode.data("id", json.id).data("name", fromdb(json.name));
|
||||
var clusterName = $clusterNode.find("#cluster_name").text(fromdb(json.name));
|
||||
clusterName.data("jsonObj", json);
|
||||
|
||||
@ -945,7 +945,7 @@ function showNetworkingTab(p_domainId, p_account) {
|
||||
for (var i = 0; i < instances.length; i++) {
|
||||
var vmName = getVmName(instances[i].name, instances[i].displayname);
|
||||
html = $("<option value='" + instances[i].id + "'>" + vmName + "</option>")
|
||||
html.data("vmPrivateIp", instances[i].privateip).data("vmName", vmName);
|
||||
html.data("vmPrivateIp", instances[i].ipaddress).data("vmName", vmName);
|
||||
vmSelect.append(html);
|
||||
}
|
||||
} else {
|
||||
@ -989,8 +989,8 @@ function showNetworkingTab(p_domainId, p_account) {
|
||||
data: createURL("command=createLoadBalancerRule&response=json"+array1.join("")),
|
||||
dataType: "json",
|
||||
success: function(json) {
|
||||
var items = json.createloadbalancerruleresponse.loadbalancerrule;
|
||||
loadBalancerJsonToTemplate(items[0],template);
|
||||
var items = json.createloadbalancerruleresponse;
|
||||
loadBalancerJsonToTemplate(items,template);
|
||||
loadingImg.hide();
|
||||
rowContainer.show();
|
||||
refreshCreateLoadBalancerRow();
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user