From a9aa592df2252d05d79aef4782f6cdf6a7915272 Mon Sep 17 00:00:00 2001 From: Jessica Wang Date: Thu, 30 Dec 2010 19:30:35 -0800 Subject: [PATCH] zone page, resource page - expand newly created cluster node automatically after a cluster is created successfully. --- ui/scripts/cloud.core.pod.js | 6 +++--- ui/scripts/cloud.core.resource.js | 22 ++++++++++++++++++++++ ui/scripts/cloud.core.zone.js | 24 +++++++++++++++++++++++- 3 files changed, 48 insertions(+), 4 deletions(-) diff --git a/ui/scripts/cloud.core.pod.js b/ui/scripts/cloud.core.pod.js index 62a5a97bccd..c3815e3c8c3 100644 --- a/ui/scripts/cloud.core.pod.js +++ b/ui/scripts/cloud.core.pod.js @@ -365,9 +365,9 @@ function bindAddClusterButton($leftmenuItem1) { dataType: "json", success: function(json) { $thisDialog.find("#spinning_wheel").hide(); - $thisDialog.dialog("close"); - var item = json.addclusterresponse.cluster[0]; - + $thisDialog.dialog("close"); + + var item = json.addclusterresponse.cluster[0]; var $podNode = $("#pod_" + podId); if($podNode.length > 0 && $podNode.css("display") != "none") { if($podNode.find("#pod_arrow").hasClass("white_nonexpanded_close")) { diff --git a/ui/scripts/cloud.core.resource.js b/ui/scripts/cloud.core.resource.js index 01997fbf732..d0c8ea3d7bf 100644 --- a/ui/scripts/cloud.core.resource.js +++ b/ui/scripts/cloud.core.resource.js @@ -782,6 +782,28 @@ function initAddClusterShortcut() { $thisDialog.find("#spinning_wheel").hide(); $thisDialog.dialog("close"); + var item = json.addclusterresponse.cluster[0]; + var $podNode = $("#pod_" + podId); + if($podNode.length > 0 && $podNode.css("display") != "none") { + if($podNode.find("#pod_arrow").hasClass("white_nonexpanded_close")) { + $podNode.find("#pod_arrow").removeClass("white_nonexpanded_close").addClass("expanded_close"); + } + + if($podNode.find("#pod_arrow").hasClass("expanded_close")) { //if pod node is closed + $podNode.find("#pod_arrow").click(); //expand pod node + var $clusterNode = $podNode.find("#cluster_"+item.id); + $clusterNode.find("#cluster_arrow").click(); //expand cluster node to see host node and storage node + $clusterNode.find("#cluster_name").click(); //click cluster node to show cluster info + } + else { //if pod node is expanded + var $clusterNode = $("#leftmenu_cluster_node_template").clone(true); + clusterJSONToTreeNode(item, $clusterNode); + $podNode.find("#clusters_container").append($clusterNode.show()); + $clusterNode.find("#cluster_arrow").click(); //expand cluster node to see host node and storage node + $clusterNode.find("#cluster_name").click(); //click cluster node to show cluster info + } + } + var clusterTotal = parseInt($("#cluster_total").text()); clusterTotal++; $("#cluster_total").text(clusterTotal.toString()); diff --git a/ui/scripts/cloud.core.zone.js b/ui/scripts/cloud.core.zone.js index 37ab383b33e..e4ca80a4041 100644 --- a/ui/scripts/cloud.core.zone.js +++ b/ui/scripts/cloud.core.zone.js @@ -1137,7 +1137,29 @@ function bindAddClusterButtonOnZonePage($button, zoneId, zoneName) { dataType: "json", success: function(json) { $thisDialog.find("#spinning_wheel").hide(); - $thisDialog.dialog("close"); + $thisDialog.dialog("close"); + + var item = json.addclusterresponse.cluster[0]; + var $podNode = $("#pod_" + podId); + if($podNode.length > 0 && $podNode.css("display") != "none") { + if($podNode.find("#pod_arrow").hasClass("white_nonexpanded_close")) { + $podNode.find("#pod_arrow").removeClass("white_nonexpanded_close").addClass("expanded_close"); + } + + if($podNode.find("#pod_arrow").hasClass("expanded_close")) { //if pod node is closed + $podNode.find("#pod_arrow").click(); //expand pod node + var $clusterNode = $podNode.find("#cluster_"+item.id); + $clusterNode.find("#cluster_arrow").click(); //expand cluster node to see host node and storage node + $clusterNode.find("#cluster_name").click(); //click cluster node to show cluster info + } + else { //if pod node is expanded + var $clusterNode = $("#leftmenu_cluster_node_template").clone(true); + clusterJSONToTreeNode(item, $clusterNode); + $podNode.find("#clusters_container").append($clusterNode.show()); + $clusterNode.find("#cluster_arrow").click(); //expand cluster node to see host node and storage node + $clusterNode.find("#cluster_name").click(); //click cluster node to show cluster info + } + } }, error: function(XMLHttpResponse) { handleError(XMLHttpResponse, function() {