mirror of https://github.com/apache/cloudstack.git
bug 6873: CloudStack UI - Pod page - implement Enable/Disable Pod action.
This commit is contained in:
parent
36d0132950
commit
f0b8540d98
|
|
@ -12,18 +12,24 @@ label.PING.CIFS.password=PING CIFS password
|
|||
label.CPU.cap=CPU Cap
|
||||
|
||||
label.action.enable.zone=Enable Zone
|
||||
label.action.enable.zone.processing=Enabling Zone....
|
||||
message.action.enable.zone=Please confirm that you want to enable this zone.
|
||||
label.action.disable.zone=Disable Zone
|
||||
label.action.disable.zone.processing=Disabling Zone....
|
||||
message.action.disable.zone=Please confirm that you want to disable this zone.
|
||||
|
||||
label.action.enable.pod=Enable Pod
|
||||
label.action.enable.pod.processing=Enabling Pod....
|
||||
message.action.enable.pod=Please confirm that you want to enable this pod.
|
||||
label.action.disable.pod=Disable Pod
|
||||
message.action.disable.pod=Please confirm that you want to diable this pod.
|
||||
label.action.disable.pod.processing=Disabling Pod....
|
||||
message.action.disable.pod=Please confirm that you want to disable this pod.
|
||||
|
||||
label.action.enable.cluster=Enable Cluster
|
||||
label.action.enable.cluster.processing=Enabling Cluster....
|
||||
message.action.enable.cluster=Please confirm that you want to enable this cluster.
|
||||
label.action.disable.cluster=Disable Cluster
|
||||
label.action.disable.cluster.processing=Disabling Cluster....
|
||||
message.action.disable.cluster=Please confirm that you want to disable this cluster.
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -10,7 +10,13 @@ dictionary = {
|
|||
'label.action.edit.pod' : '<fmt:message key="label.action.edit.pod"/>',
|
||||
'label.action.delete.pod' : '<fmt:message key="label.action.delete.pod"/>',
|
||||
'label.action.delete.pod.processing' : '<fmt:message key="label.action.delete.pod.processing"/>',
|
||||
'message.action.delete.pod' : '<fmt:message key="message.action.delete.pod"/>'
|
||||
'message.action.delete.pod' : '<fmt:message key="message.action.delete.pod"/>',
|
||||
'label.action.enable.pod' : '<fmt:message key="label.action.enable.pod"/>',
|
||||
'label.action.enable.pod.processing' : '<fmt:message key="label.action.enable.pod.processing"/>',
|
||||
'message.action.enable.pod' : '<fmt:message key="message.action.enable.pod"/>',
|
||||
'label.action.disable.pod' : '<fmt:message key="label.action.disable.pod"/>',
|
||||
'label.action.disable.pod.processing' : '<fmt:message key="label.action.disable.pod.processing"/>',
|
||||
'message.action.disable.pod' : '<fmt:message key="message.action.disable.pod"/>'
|
||||
};
|
||||
</script>
|
||||
|
||||
|
|
|
|||
|
|
@ -79,41 +79,6 @@ function podJsonToDetailsTab() {
|
|||
podClearDetailsTab();
|
||||
return;
|
||||
}
|
||||
|
||||
$.ajax({
|
||||
data: createURL("command=listPods&id="+jsonObj.id),
|
||||
dataType: "json",
|
||||
async: false,
|
||||
success: function(json) {
|
||||
var items = json.listpodsresponse.pod;
|
||||
if(items != null && items.length > 0) {
|
||||
jsonObj = items[0];
|
||||
$leftmenuItem1.data("jsonObj", jsonObj);
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
var $thisTab = $("#right_panel_content #tab_content_details");
|
||||
$thisTab.find("#tab_container").hide();
|
||||
$thisTab.find("#tab_spinning_wheel").show();
|
||||
|
||||
$thisTab.find("#id").text(fromdb(jsonObj.id));
|
||||
$thisTab.find("#grid_header_title").text(fromdb(jsonObj.name));
|
||||
|
||||
$thisTab.find("#name").text(fromdb(jsonObj.name));
|
||||
$thisTab.find("#name_edit").val(fromdb(jsonObj.name));
|
||||
|
||||
$thisTab.find("#netmask").text(fromdb(jsonObj.netmask));
|
||||
$thisTab.find("#netmask_edit").val(fromdb(jsonObj.netmask));
|
||||
|
||||
$thisTab.find("#ipRange").text(getIpRange(jsonObj.startip, jsonObj.endip));
|
||||
$thisTab.find("#startIpRange_edit").val(fromdb(jsonObj.startip));
|
||||
$thisTab.find("#endIpRange_edit").val(fromdb(jsonObj.endip));
|
||||
|
||||
$thisTab.find("#gateway").text(fromdb(jsonObj.gateway));
|
||||
$thisTab.find("#gateway_edit").val(fromdb(jsonObj.gateway));
|
||||
|
||||
$thisTab.find("#allocationstate").text(fromdb(jsonObj.allocationstate));
|
||||
|
||||
// hide network tab upon zone vlan
|
||||
var networkType;
|
||||
|
|
@ -137,20 +102,66 @@ function podJsonToDetailsTab() {
|
|||
$("#tab_ipallocation, #add_iprange_button, #add_network_device_button").hide();
|
||||
$("#midmenu_add_directIpRange_button").unbind("click").hide();
|
||||
}
|
||||
|
||||
$.ajax({
|
||||
data: createURL("command=listPods&id="+jsonObj.id),
|
||||
dataType: "json",
|
||||
async: false,
|
||||
success: function(json) {
|
||||
var items = json.listpodsresponse.pod;
|
||||
if(items != null && items.length > 0) {
|
||||
jsonObj = items[0];
|
||||
$leftmenuItem1.data("jsonObj", jsonObj);
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
podJsonToDetailsTab2(jsonObj);
|
||||
}
|
||||
|
||||
function podJsonToDetailsTab2(jsonObj) {
|
||||
var $leftmenuItem1 = $("#right_panel_content").data("$leftmenuItem1");
|
||||
|
||||
var $thisTab = $("#right_panel_content #tab_content_details");
|
||||
$thisTab.find("#tab_container").hide();
|
||||
$thisTab.find("#tab_spinning_wheel").show();
|
||||
|
||||
$thisTab.find("#id").text(fromdb(jsonObj.id));
|
||||
$thisTab.find("#grid_header_title").text(fromdb(jsonObj.name));
|
||||
|
||||
//actions ***
|
||||
$thisTab.find("#name").text(fromdb(jsonObj.name));
|
||||
$thisTab.find("#name_edit").val(fromdb(jsonObj.name));
|
||||
|
||||
$thisTab.find("#netmask").text(fromdb(jsonObj.netmask));
|
||||
$thisTab.find("#netmask_edit").val(fromdb(jsonObj.netmask));
|
||||
|
||||
$thisTab.find("#ipRange").text(getIpRange(jsonObj.startip, jsonObj.endip));
|
||||
$thisTab.find("#startIpRange_edit").val(fromdb(jsonObj.startip));
|
||||
$thisTab.find("#endIpRange_edit").val(fromdb(jsonObj.endip));
|
||||
|
||||
$thisTab.find("#gateway").text(fromdb(jsonObj.gateway));
|
||||
$thisTab.find("#gateway_edit").val(fromdb(jsonObj.gateway));
|
||||
|
||||
$thisTab.find("#allocationstate").text(fromdb(jsonObj.allocationstate));
|
||||
|
||||
//actions ***
|
||||
var $actionLink = $thisTab.find("#action_link");
|
||||
bindActionLink($actionLink);
|
||||
|
||||
var $actionMenu = $actionLink.find("#action_menu");
|
||||
$actionMenu.find("#action_list").empty();
|
||||
buildActionLinkForTab("label.action.edit.pod", podActionMap, $actionMenu, $leftmenuItem1, $thisTab);
|
||||
|
||||
var $actionMenu = $actionLink.find("#action_menu");
|
||||
$actionMenu.find("#action_list").empty();
|
||||
buildActionLinkForTab("label.action.edit.pod", podActionMap, $actionMenu, $leftmenuItem1, $thisTab);
|
||||
|
||||
if(jsonObj.allocationstate == "Disabled")
|
||||
buildActionLinkForTab("label.action.enable.pod", podActionMap, $actionMenu, $leftmenuItem1, $thisTab);
|
||||
else if(jsonObj.allocationstate == "Enabled")
|
||||
buildActionLinkForTab("label.action.disable.pod", podActionMap, $actionMenu, $leftmenuItem1, $thisTab);
|
||||
|
||||
buildActionLinkForTab("label.action.delete.pod", podActionMap, $actionMenu, $leftmenuItem1, $thisTab);
|
||||
|
||||
$thisTab.find("#tab_spinning_wheel").hide();
|
||||
$thisTab.find("#tab_container").show();
|
||||
}
|
||||
$thisTab.find("#tab_spinning_wheel").hide();
|
||||
$thisTab.find("#tab_container").show();
|
||||
}
|
||||
|
||||
function podJsonToNetworkTab() {
|
||||
var $leftmenuItem1 = $("#right_panel_content").data("$leftmenuItem1");
|
||||
|
|
@ -1089,7 +1100,27 @@ function iscsiURL(server, iqn, lun) {
|
|||
var podActionMap = {
|
||||
"label.action.edit.pod": {
|
||||
dialogBeforeActionFn: doEditPod
|
||||
},
|
||||
},
|
||||
"label.action.enable.pod": {
|
||||
isAsyncJob: false,
|
||||
dialogBeforeActionFn : doEnablePod,
|
||||
inProcessText: "label.action.enable.pod.processing",
|
||||
afterActionSeccessFn: function(json, $midmenuItem1, id) {
|
||||
var jsonObj = json.updatepodresponse.pod;
|
||||
podJsonToDetailsTab2(jsonObj);
|
||||
}
|
||||
}
|
||||
,
|
||||
"label.action.disable.pod": {
|
||||
isAsyncJob: false,
|
||||
dialogBeforeActionFn : doDisablePod,
|
||||
inProcessText: "label.action.disable.pod.processing",
|
||||
afterActionSeccessFn: function(json, $midmenuItem1, id) {
|
||||
var jsonObj = json.updatepodresponse.pod;
|
||||
podJsonToDetailsTab2(jsonObj);
|
||||
}
|
||||
}
|
||||
,
|
||||
"label.action.delete.pod": {
|
||||
isAsyncJob: false,
|
||||
dialogBeforeActionFn : doDeletePod,
|
||||
|
|
@ -1187,6 +1218,42 @@ function doEditPod2($actionLink, $detailsTab, $midmenuItem1, $readonlyFields, $e
|
|||
}
|
||||
}
|
||||
|
||||
function doEnablePod($actionLink, $detailsTab, $midmenuItem1) {
|
||||
var jsonObj = $midmenuItem1.data("jsonObj");
|
||||
var id = jsonObj.id;
|
||||
|
||||
$("#dialog_confirmation")
|
||||
.text(dictionary["message.action.enable.pod"])
|
||||
.dialog('option', 'buttons', {
|
||||
"Confirm": function() {
|
||||
$(this).dialog("close");
|
||||
var apiCommand = "command=updatePod&id="+id+"&allocationstate=Enabled";
|
||||
doActionToTab(id, $actionLink, apiCommand, $midmenuItem1, $detailsTab);
|
||||
},
|
||||
"Cancel": function() {
|
||||
$(this).dialog("close");
|
||||
}
|
||||
}).dialog("open");
|
||||
}
|
||||
|
||||
function doDisablePod($actionLink, $detailsTab, $midmenuItem1) {
|
||||
var jsonObj = $midmenuItem1.data("jsonObj");
|
||||
var id = jsonObj.id;
|
||||
|
||||
$("#dialog_confirmation")
|
||||
.text(dictionary["message.action.disable.pod"])
|
||||
.dialog('option', 'buttons', {
|
||||
"Confirm": function() {
|
||||
$(this).dialog("close");
|
||||
var apiCommand = "command=updatePod&id="+id+"&allocationstate=Disabled";
|
||||
doActionToTab(id, $actionLink, apiCommand, $midmenuItem1, $detailsTab);
|
||||
},
|
||||
"Cancel": function() {
|
||||
$(this).dialog("close");
|
||||
}
|
||||
}).dialog("open");
|
||||
}
|
||||
|
||||
function doDeletePod($actionLink, $detailsTab, $midmenuItem1) {
|
||||
var jsonObj = $midmenuItem1.data("jsonObj");
|
||||
var id = jsonObj.id;
|
||||
|
|
|
|||
Loading…
Reference in New Issue