From 85c25acf4be74d866eaa23b214ba8bd7d9701405 Mon Sep 17 00:00:00 2001 From: Jessica Wang Date: Mon, 11 Oct 2010 10:10:14 -0700 Subject: [PATCH] new UI - resources page - add system VM under each zone. --- ui/new/css/main.css | 9 ++++ ui/new/images/zone_systemvmicon.png | Bin 0 -> 1055 bytes ui/new/jsp/resource.jsp | 14 ++++++ ui/new/scripts/cloud.core2.resource.js | 64 ++++++++++++++++++------- 4 files changed, 71 insertions(+), 16 deletions(-) create mode 100644 ui/new/images/zone_systemvmicon.png diff --git a/ui/new/css/main.css b/ui/new/css/main.css index 2b2bd52aeba..0ed7bdf1736 100644 --- a/ui/new/css/main.css +++ b/ui/new/css/main.css @@ -3407,6 +3407,15 @@ a:hover.search_button { padding:0; } +.zonetree_systemvmicon { + width:22px; + height:18px; + float:left; + background:url(../images/zone_systemvmicon.png) no-repeat top left; + font-weight:bold; + margin:3px 0 0 5px; + padding:0; +} .zonetree_links { width:auto; diff --git a/ui/new/images/zone_systemvmicon.png b/ui/new/images/zone_systemvmicon.png new file mode 100644 index 0000000000000000000000000000000000000000..5f881f4209567894678b88f0442c5f9a9d309498 GIT binary patch literal 1055 zcmV+)1mOFLP)^001Q-Bsn%Z2nGWG|NjBJzrfPa(Ea`W zHa9vA3km`Nd;o+00qg7Q^7HbgrKbf11pxv8^6>IwZdCd92Mq-d_xbk$|NsA3T3akD zD-8(?2MY)Q008jo>h$#Y;o{??rlSGf+}`c+^5Wp)0RI2|0R8^`{Tv(~009991_Sc* z@&pD51tSt4$-=?@0s;R1{`~p)Ej}^<{0ATt5!%|^0#HCED-AoN#>Gxu0j2Dpbi7k^;hnRA7ow z3jAa6)VY~9>$U0(RE#K`#*n z27ty|2-UD{z=#5^nkGD4U!7c>Gm9-cPHncHa_$GCag^+B@05c)&$AelMIp6nxraSI z$Vch=#v0w++Kr;PY@!AbkWyunU!k+txBj01os&&VLQxQg&)j=GCZxA3(WZrcY?AhU zu0(NRv-p^)jp=ujM&3W07P Ze*i>dGTY>Pc*y_&002ovPDHLkV1msj0sQ~~ literal 0 HcmV?d00001 diff --git a/ui/new/jsp/resource.jsp b/ui/new/jsp/resource.jsp index 21474aa19b1..147832d06c6 100644 --- a/ui/new/jsp/resource.jsp +++ b/ui/new/jsp/resource.jsp @@ -295,6 +295,8 @@ @@ -319,3 +321,15 @@ + + + + + diff --git a/ui/new/scripts/cloud.core2.resource.js b/ui/new/scripts/cloud.core2.resource.js index 18f1905c4c5..55839e10a39 100644 --- a/ui/new/scripts/cloud.core2.resource.js +++ b/ui/new/scripts/cloud.core2.resource.js @@ -12,13 +12,13 @@ function afterLoadResourceJSP() { data: createURL("command=listZones&available=true&response=json"+maxPageSize), dataType: "json", success: function(json) { - var zones = json.listzonesresponse.zone; - var grid = $("#zonetree1 #zones_container").empty(); - if (zones != null && zones.length > 0) { - for (var i = 0; i < zones.length; i++) { - var template = $("#zone_template").clone(true).attr("id", "zone_"+zones[i].id); - zoneJSONToTemplate(zones[i], template); - grid.append(template.show()); + var items = json.listzonesresponse.zone; + var container = $("#zonetree1 #zones_container").empty(); + if (items != null && items.length > 0) { + for (var i = 0; i < items.length; i++) { + var template = $("#zone_template").clone(true).attr("id", "zone_"+items[i].id); + zoneJSONToTemplate(items[i], template); + container.append(template.show()); } } } @@ -42,17 +42,33 @@ function afterLoadResourceJSP() { template.find("#zone_name").data("vlan", json.vlan); $.ajax({ - data: createURL("command=listPods&zoneid="+zoneid+"&response=json"), + data: createURL("command=listPods&zoneid="+zoneid+"&response=json"), dataType: "json", success: function(json) { - var pods = json.listpodsresponse.pod; - var grid = template.find("#pods_container").empty(); - if (pods != null && pods.length > 0) { - for (var i = 0; i < pods.length; i++) { - var podTemplate = $("#pod_template").clone(true).attr("id", "pod_"+pods[i].id); - podJSONToTemplate(pods[i], podTemplate); - grid.append(podTemplate.show()); - forceLogout = false; + var items = json.listpodsresponse.pod; + var container = template.find("#pods_container").empty(); + if (items != null && items.length > 0) { + for (var i = 0; i < items.length; i++) { + var podTemplate = $("#pod_template").clone(true).attr("id", "pod_"+items[i].id); + podJSONToTemplate(items[i], podTemplate); + container.append(podTemplate.show()); + forceLogout = false; // We don't force a logout if pod(s) exit. + } + } + } + }); + + $.ajax({ + data: createURL("command=listSystemVms&zoneid="+zoneid+"&response=json"), + dataType: "json", + success: function(json) { + var items = json.listsystemvmsresponse.systemvm; + var container = template.find("#systemvms_container").empty(); + if (items != null && items.length > 0) { + for (var i = 0; i < items.length; i++) { + var systemvmTemplate = $("#systemvm_template").clone(true).attr("id", "systemvm_"+items[i].id); + systemvmJSONToTemplate(items[i], systemvmTemplate); + container.append(systemvmTemplate.show()); } } } @@ -85,6 +101,22 @@ function afterLoadResourceJSP() { podName.data("gateway", json.gateway); } + function systemvmJSONToTemplate(json, template) { + template.data("id", json.id).data("name", json.name); + + var systeymvmName = template.find("#systemvm_name").text(json.name); + systeymvmName.data("systemvmtype", json.systemvmtype); + systeymvmName.data("name", json.name); + systeymvmName.data("zonename", json.zonename); + systeymvmName.data("activeviewersessions", json.activeviewersessions); + systeymvmName.data("publicip", json.publicip); + systeymvmName.data("privateip", json.privateip); + systeymvmName.data("hostname", json.hostname); + systeymvmName.data("gateway", json.gateway); + systeymvmName.data("created", json.created); + systeymvmName.data("state", json.state); + } + $("#zone_template").bind("click", function(event) { var template = $(this); var target = $(event.target);