mirror of https://github.com/apache/cloudstack.git
new UI - volume page - after action on right panel is finished, update both middle menu and right panel.
This commit is contained in:
parent
252add5d2b
commit
8c48de076a
|
|
@ -2,7 +2,7 @@ function afterLoadAccountJSP() {
|
|||
|
||||
}
|
||||
|
||||
function accountToMidmenu(jsonObj, $midmenuItem1, toRightPanelFn) {
|
||||
function accountToMidmenu(jsonObj, $midmenuItem1) {
|
||||
$midmenuItem1.attr("id", ("midmenuItem_"+jsonObj.id));
|
||||
$midmenuItem1.data("jsonObj", jsonObj);
|
||||
|
||||
|
|
@ -15,8 +15,7 @@ function accountToMidmenu(jsonObj, $midmenuItem1, toRightPanelFn) {
|
|||
$iconContainer.find("#icon").attr("src", "images/midmenuicon_account_domain.png");
|
||||
|
||||
$midmenuItem1.find("#first_row").text(fromdb(jsonObj.name).substring(0,25));
|
||||
$midmenuItem1.find("#second_row").text(fromdb(jsonObj.domain).substring(0,25));
|
||||
$midmenuItem1.data("toRightPanelFn", toRightPanelFn);
|
||||
$midmenuItem1.find("#second_row").text(fromdb(jsonObj.domain).substring(0,25));
|
||||
}
|
||||
|
||||
function accountToRigntPanel($midmenuItem) {
|
||||
|
|
|
|||
|
|
@ -2,12 +2,11 @@ function afterLoadAlertJSP() {
|
|||
|
||||
}
|
||||
|
||||
function alertToMidmenu(jsonObj, $midmenuItem1, toRightPanelFn) {
|
||||
function alertToMidmenu(jsonObj, $midmenuItem1) {
|
||||
$midmenuItem1.attr("id", ("midmenuItem_"+jsonObj.id));
|
||||
$midmenuItem1.data("jsonObj", jsonObj);
|
||||
$midmenuItem1.find("#first_row").text(jsonObj.description.substring(0,25));
|
||||
$midmenuItem1.find("#second_row").text(jsonObj.type.substring(0,25));
|
||||
$midmenuItem1.data("toRightPanelFn", toRightPanelFn);
|
||||
$midmenuItem1.find("#second_row").text(jsonObj.type.substring(0,25));
|
||||
}
|
||||
|
||||
function alertToRigntPanel($midmenuItem) {
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@ function afterLoadEventJSP() {
|
|||
|
||||
}
|
||||
|
||||
function eventToMidmenu(jsonObj, $midmenuItem1, toRightPanelFn) {
|
||||
function eventToMidmenu(jsonObj, $midmenuItem1) {
|
||||
$midmenuItem1.attr("id", ("midmenuItem_"+jsonObj.id));
|
||||
$midmenuItem1.data("jsonObj", jsonObj);
|
||||
|
||||
|
|
@ -15,8 +15,7 @@ function eventToMidmenu(jsonObj, $midmenuItem1, toRightPanelFn) {
|
|||
$iconContainer.find("#icon").attr("src", "images/midmenuicon_events_warning.png");
|
||||
|
||||
$midmenuItem1.find("#first_row").text(jsonObj.description.substring(0,25));
|
||||
$midmenuItem1.find("#second_row").text(jsonObj.type.substring(0,25));
|
||||
$midmenuItem1.data("toRightPanelFn", toRightPanelFn);
|
||||
$midmenuItem1.find("#second_row").text(jsonObj.type.substring(0,25));
|
||||
}
|
||||
|
||||
function eventToRigntPanel($midmenuItem) {
|
||||
|
|
|
|||
|
|
@ -40,16 +40,7 @@ $(document).ready(function() {
|
|||
}
|
||||
}
|
||||
});
|
||||
|
||||
function jsonToMidmenu(jsonObj, $midmenuItem1, propertyForFirstRow, propertyForSecondRow, toRightPanelFn) {
|
||||
$midmenuItem1.attr("id", ("midmenuItem_"+jsonObj.id));
|
||||
$midmenuItem1.data("id", jsonObj.id);
|
||||
$midmenuItem1.data("jsonObj", jsonObj);
|
||||
$midmenuItem1.find("#first_row").text(jsonObj[propertyForFirstRow].substring(0,25));
|
||||
$midmenuItem1.find("#second_row").text(jsonObj[propertyForSecondRow].substring(0,25));
|
||||
$midmenuItem1.data("toRightPanelFn", toRightPanelFn);
|
||||
}
|
||||
|
||||
|
||||
function clearMidMenu() {
|
||||
$("#midmenu_container").empty();
|
||||
$("#midmenu_action_link").hide();
|
||||
|
|
@ -71,8 +62,9 @@ $(document).ready(function() {
|
|||
var items = json[jsonResponse1][jsonResponse2];
|
||||
if(items != null && items.length > 0) {
|
||||
for(var i=0; i<items.length;i++) {
|
||||
var $midmenuItem1 = $midmenuItem.clone();
|
||||
toMidmenu(items[i], $midmenuItem1, toRightPanel);
|
||||
var $midmenuItem1 = $midmenuItem.clone();
|
||||
$midmenuItem1.data("toRightPanelFn", toRightPanel);
|
||||
toMidmenu(items[i], $midmenuItem1);
|
||||
$("#midmenu_container").append($midmenuItem1.show());
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -329,17 +329,15 @@ function clickInstanceGroupHeader($arrowIcon) {
|
|||
midmenuItem.find("#icon").attr("src", "images/status_gray.png");
|
||||
}
|
||||
|
||||
function vmToMidmenu(json, $midmenuItem1, toRightPanelFn) {
|
||||
function vmToMidmenu(json, $midmenuItem1) {
|
||||
$midmenuItem1.data("jsonObj", json);
|
||||
$midmenuItem1.data("toRightPanelFn", toRightPanelFn);
|
||||
$midmenuItem1.attr("id", ("midmenuItem_"+json.id));
|
||||
|
||||
var $iconContainer = $midmenuItem1.find("#icon_container").show();
|
||||
$iconContainer.find("#icon").attr("src", "images/status_gray.png");
|
||||
|
||||
var vmName = getVmName(json.name, json.displayname);
|
||||
$midmenuItem1.find("#first_row").text(vmName);
|
||||
//$midmenuItem1.find("#second_row_label").text("IP Address:");
|
||||
$midmenuItem1.find("#first_row").text(vmName);
|
||||
$midmenuItem1.find("#second_row").text(json.ipaddress);
|
||||
updateVirtualMachineStateInMidMenu(json, $midmenuItem1);
|
||||
$midmenuItem1.bind("click", function(event) {
|
||||
|
|
@ -527,9 +525,10 @@ function clickInstanceGroupHeader($arrowIcon) {
|
|||
success: function(json) {
|
||||
var instances = json.listvirtualmachinesresponse.virtualmachine;
|
||||
for(var i=0; i<instances.length;i++) {
|
||||
var $template = $midmenuItem.clone();
|
||||
vmToMidmenu(instances[i], $template, vmToRightPanel);
|
||||
$("#midmenu_container").append($template.show());
|
||||
var $midmenuItem1 = $midmenuItem.clone();
|
||||
$midmenuItem1.data("toRightPanelFn", vmToRightPanel);
|
||||
vmToMidmenu(instances[i], $midmenuItem1);
|
||||
$("#midmenu_container").append($midmenuItem1.show());
|
||||
}
|
||||
}
|
||||
});
|
||||
|
|
@ -1173,7 +1172,7 @@ function clickInstanceGroupHeader($arrowIcon) {
|
|||
$t.find("#info_icon").removeClass("error").show();
|
||||
$t.data("afterActionInfo", ("Adding succeeded."));
|
||||
if("virtualmachine" in result)
|
||||
vmToMidmenu(result.virtualmachine[0], $t, vmToRightPanel);
|
||||
vmToMidmenu(result.virtualmachine[0], $t);
|
||||
|
||||
} else if (result.jobstatus == 2) {
|
||||
// Failed
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@ function afterLoadIpJSP() {
|
|||
|
||||
}
|
||||
|
||||
function ipToMidmenu(jsonObj, $midmenuItem1, toRightPanelFn) {
|
||||
function ipToMidmenu(jsonObj, $midmenuItem1) {
|
||||
$midmenuItem1.attr("id", ("midmenuItem_"+jsonObj.id));
|
||||
$midmenuItem1.data("jsonObj", jsonObj);
|
||||
|
||||
|
|
@ -10,8 +10,7 @@ function ipToMidmenu(jsonObj, $midmenuItem1, toRightPanelFn) {
|
|||
$iconContainer.find("#icon").attr("src", "images/midmenuicon_network_networkgroup.png");
|
||||
|
||||
$midmenuItem1.find("#first_row").text(jsonObj.ipaddress.substring(0,25));
|
||||
$midmenuItem1.find("#second_row").text(fromdb(jsonObj.account).substring(0,25));
|
||||
$midmenuItem1.data("toRightPanelFn", toRightPanelFn);
|
||||
$midmenuItem1.find("#second_row").text(fromdb(jsonObj.account).substring(0,25));
|
||||
}
|
||||
|
||||
function ipToRigntPanel($midmenuItem) {
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@ function afterLoadIsoJSP() {
|
|||
|
||||
}
|
||||
|
||||
function isoToMidmenu(jsonObj, $midmenuItem1, toRightPanelFn) {
|
||||
function isoToMidmenu(jsonObj, $midmenuItem1) {
|
||||
$midmenuItem1.attr("id", ("midmenuItem_"+jsonObj.id));
|
||||
$midmenuItem1.data("jsonObj", jsonObj);
|
||||
|
||||
|
|
@ -10,9 +10,7 @@ function isoToMidmenu(jsonObj, $midmenuItem1, toRightPanelFn) {
|
|||
setIconByOsType(jsonObj.ostypename, $iconContainer.find("#icon"));
|
||||
|
||||
$midmenuItem1.find("#first_row").text(fromdb(jsonObj.name).substring(0,25));
|
||||
$midmenuItem1.find("#second_row").text(fromdb(jsonObj.zonename).substring(0,25));
|
||||
$midmenuItem1.data("toRightPanelFn", toRightPanelFn);
|
||||
|
||||
$midmenuItem1.find("#second_row").text(fromdb(jsonObj.zonename).substring(0,25));
|
||||
}
|
||||
|
||||
function isoToRigntPanel($midmenuItem) {
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@ function afterLoadSnapshotJSP() {
|
|||
|
||||
}
|
||||
|
||||
function snapshotToMidmenu(jsonObj, $midmenuItem1, toRightPanelFn) {
|
||||
function snapshotToMidmenu(jsonObj, $midmenuItem1) {
|
||||
$midmenuItem1.attr("id", ("midmenuItem_"+jsonObj.id));
|
||||
$midmenuItem1.data("jsonObj", jsonObj);
|
||||
|
||||
|
|
@ -10,8 +10,7 @@ function snapshotToMidmenu(jsonObj, $midmenuItem1, toRightPanelFn) {
|
|||
$iconContainer.find("#icon").attr("src", "images/midmenuicon_storage_snapshots.png");
|
||||
|
||||
$midmenuItem1.find("#first_row").text(fromdb(jsonObj.name).substring(0,25));
|
||||
$midmenuItem1.find("#second_row").text(fromdb(jsonObj.volumename).substring(0,25));
|
||||
$midmenuItem1.data("toRightPanelFn", toRightPanelFn);
|
||||
$midmenuItem1.find("#second_row").text(fromdb(jsonObj.volumename).substring(0,25));
|
||||
}
|
||||
|
||||
function snapshotToRigntPanel($midmenuItem) {
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@ function afterLoadTemplateJSP() {
|
|||
|
||||
}
|
||||
|
||||
function templateToMidmenu(jsonObj, $midmenuItem1, toRightPanelFn) {
|
||||
function templateToMidmenu(jsonObj, $midmenuItem1) {
|
||||
$midmenuItem1.attr("id", ("midmenuItem_"+jsonObj.id));
|
||||
$midmenuItem1.data("jsonObj", jsonObj);
|
||||
|
||||
|
|
@ -17,9 +17,7 @@ function templateToMidmenu(jsonObj, $midmenuItem1, toRightPanelFn) {
|
|||
iconContainer.find("#icon").attr("src", "images/midmenuicon_events_warning.png");
|
||||
|
||||
$midmenuItem1.find("#first_row").text(fromdb(jsonObj.name).substring(0,25));
|
||||
$midmenuItem1.find("#second_row").text(fromdb(jsonObj.zonename).substring(0,25));
|
||||
$midmenuItem1.data("toRightPanelFn", toRightPanelFn);
|
||||
|
||||
$midmenuItem1.find("#second_row").text(fromdb(jsonObj.zonename).substring(0,25));
|
||||
}
|
||||
|
||||
function templateToRigntPanel($midmenuItem) {
|
||||
|
|
|
|||
|
|
@ -27,7 +27,12 @@ function afterLoadVolumeJSP() {
|
|||
});
|
||||
}
|
||||
|
||||
function volumeToMidmenu(jsonObj, $midmenuItem1, toRightPanelFn) {
|
||||
function volumeAfterDetailsTabAction(jsonObj) {
|
||||
$("#midmenuItem_"+jsonObj.id).data("jsonObj", jsonObj);
|
||||
volumeJsonToDetailsTab(jsonObj);
|
||||
}
|
||||
|
||||
function volumeToMidmenu(jsonObj, $midmenuItem1) {
|
||||
$midmenuItem1.attr("id", ("midmenuItem_"+jsonObj.id));
|
||||
$midmenuItem1.data("jsonObj", jsonObj);
|
||||
|
||||
|
|
@ -35,8 +40,7 @@ function volumeToMidmenu(jsonObj, $midmenuItem1, toRightPanelFn) {
|
|||
$iconContainer.find("#icon").attr("src", "images/midmenuicon_storage_volume.png");
|
||||
|
||||
$midmenuItem1.find("#first_row").text(fromdb(jsonObj.name).substring(0,25));
|
||||
$midmenuItem1.find("#second_row").text(jsonObj.type.substring(0,25));
|
||||
$midmenuItem1.data("toRightPanelFn", toRightPanelFn);
|
||||
$midmenuItem1.find("#second_row").text(jsonObj.type.substring(0,25));
|
||||
}
|
||||
|
||||
function volumeToRigntPanel($midmenuItem) {
|
||||
|
|
@ -44,26 +48,26 @@ function volumeToRigntPanel($midmenuItem) {
|
|||
volumeJsonToDetailsTab(json);
|
||||
}
|
||||
|
||||
function volumeJsonToDetailsTab(json){
|
||||
function volumeJsonToDetailsTab(jsonObj){
|
||||
var $detailsTab = $("#right_panel_content #tab_content_details");
|
||||
$detailsTab.data("jsonObj", json);
|
||||
$detailsTab.find("#id").text(json.id);
|
||||
$detailsTab.find("#name").text(fromdb(json.name));
|
||||
$detailsTab.find("#zonename").text(fromdb(json.zonename));
|
||||
$detailsTab.find("#device_id").text(json.deviceid);
|
||||
$detailsTab.find("#state").text(json.state);
|
||||
$detailsTab.find("#storage").text(fromdb(json.storage));
|
||||
$detailsTab.find("#account").text(fromdb(json.account));
|
||||
$detailsTab.data("jsonObj", jsonObj);
|
||||
$detailsTab.find("#id").text(jsonObj.id);
|
||||
$detailsTab.find("#name").text(fromdb(jsonObj.name));
|
||||
$detailsTab.find("#zonename").text(fromdb(jsonObj.zonename));
|
||||
$detailsTab.find("#device_id").text(jsonObj.deviceid);
|
||||
$detailsTab.find("#state").text(jsonObj.state);
|
||||
$detailsTab.find("#storage").text(fromdb(jsonObj.storage));
|
||||
$detailsTab.find("#account").text(fromdb(jsonObj.account));
|
||||
|
||||
$detailsTab.find("#type").text(json.type + " (" + json.storagetype + " storage)");
|
||||
$detailsTab.find("#size").text((json.size == "0") ? "" : convertBytes(json.size));
|
||||
$detailsTab.find("#type").text(jsonObj.type + " (" + jsonObj.storagetype + " storage)");
|
||||
$detailsTab.find("#size").text((jsonObj.size == "0") ? "" : convertBytes(jsonObj.size));
|
||||
|
||||
if (json.virtualmachineid == null)
|
||||
if (jsonObj.virtualmachineid == null)
|
||||
$detailsTab.find("#vm_name").text("detached");
|
||||
else
|
||||
$detailsTab.find("#vm_name").text(getVmName(json.vmname, json.vmdisplayname) + " (" + json.vmstate + ")");
|
||||
$detailsTab.find("#vm_name").text(getVmName(jsonObj.vmname, jsonObj.vmdisplayname) + " (" + jsonObj.vmstate + ")");
|
||||
|
||||
setDateField(json.created, $detailsTab.find("#created"));
|
||||
setDateField(jsonObj.created, $detailsTab.find("#created"));
|
||||
|
||||
var $actionLink = $detailsTab.find("#volume_action_link");
|
||||
$actionLink.bind("mouseover", function(event) {
|
||||
|
|
@ -77,11 +81,11 @@ function volumeJsonToDetailsTab(json){
|
|||
|
||||
var $actionMenu = $actionLink.find("#volume_action_menu");
|
||||
$actionMenu.find("#action_list").empty();
|
||||
if(json.type=="ROOT") { //"create template" is allowed(when stopped), "detach disk" is disallowed.
|
||||
if (json.vmstate == "Stopped")
|
||||
if(jsonObj.type=="ROOT") { //"create template" is allowed(when stopped), "detach disk" is disallowed.
|
||||
if (jsonObj.vmstate == "Stopped")
|
||||
buildActionLinkForDetailsTab("Create Template", volumeActionMap, $actionMenu, volumeListAPIMap, $detailsTab);
|
||||
}
|
||||
else { //json.type=="DATADISK": "detach disk" is allowed, "create template" is disallowed.
|
||||
else { //jsonObj.type=="DATADISK": "detach disk" is allowed, "create template" is disallowed.
|
||||
buildActionLinkForDetailsTab("Detach Disk", volumeActionMap, $actionMenu, volumeListAPIMap, $detailsTab);
|
||||
}
|
||||
}
|
||||
|
|
@ -98,7 +102,7 @@ var volumeActionMap = {
|
|||
isAsyncJob: true,
|
||||
asyncJobResponse: "detachvolumeresponse",
|
||||
inProcessText: "Detaching disk....",
|
||||
afterActionSeccessFn: volumeJsonToDetailsTab
|
||||
afterActionSeccessFn: volumeAfterDetailsTabAction
|
||||
},
|
||||
"Create Template": {
|
||||
isAsyncJob: true,
|
||||
|
|
|
|||
Loading…
Reference in New Issue