new UI - implement delete primary storage action.

This commit is contained in:
Jessica Wang 2010-10-19 10:51:30 -07:00
parent 68eb09114a
commit da762b01db
3 changed files with 90 additions and 1 deletions

View File

@ -128,3 +128,4 @@ please.confirm.you.want.to.cancel.maintenance.for.the.host = Please confirm you
please.confirm.you.want.to.force.a.reconnection.for.the.host = Please confirm you want to force a reconnection for the host
please.confirm.you.want.to.remove.the.host.from.the.management.server = Please confirm you want to remove the host from the management server
Please.choose.a.OS.preference.for.this.host..Virtual.machines.will.always.be.allocated.to.hosts.with.an.OS.preference.that.matches.with.the.OS.type.of.the.template.chosen.for.the.virtual.machine.before.choosing.other.hosts. = Please choose a OS preference for this host. Virtual machines will always be allocated to hosts with an OS preference that matches with the OS type of the template chosen for the virtual machine before choosing other hosts.
please.confirm.you.want.to.delete_the_primary_storage = Please confirm you want to delete the primary storage

View File

@ -401,6 +401,22 @@
</div>
<!-- Details tab (start)-->
<div id="tab_content_details">
<div class="grid_actionpanel">
<div class="grid_actionbox" id="action_link">
<div class="grid_actionsdropdown_box" id="action_menu" style="display: none;">
<ul class="actionsdropdown_boxlist" id="action_list">
<li><%=t.t("no.available.actions")%></li>
</ul>
</div>
</div>
<div class="gridheader_loaderbox" id="spinning_wheel" style="border: 1px solid #999;
display: none;">
<div class="gridheader_loader" id="icon">
</div>
<p id="description">
Waiting &hellip;</p>
</div>
</div>
<div class="grid_container">
<div class="grid_rows odd">
<div class="grid_row_cell" style="width: 20%;">
@ -1126,3 +1142,9 @@
</form>
</div>
</div>
<div id="dialog_confirmation_delete_primarystorage" title="Confirmation" style="display: none">
<p>
<%=t.t("please.confirm.you.want.to.delete_the_primary_storage")%>
</p>
</div>

View File

@ -511,7 +511,41 @@ function primarystorageJsonToDetailsTab(jsonObj) {
$detailsTab.find("#path").text(fromdb(jsonObj.path));
$detailsTab.find("#disksizetotal").text(convertBytes(jsonObj.disksizetotal));
$detailsTab.find("#disksizeallocated").text(convertBytes(jsonObj.disksizeallocated));
$detailsTab.find("#tags").text(fromdb(jsonObj.tags));
$detailsTab.find("#tags").text(fromdb(jsonObj.tags));
//actions ***
var $actionLink = $detailsTab.find("#action_link");
$actionLink.bind("mouseover", function(event) {
$(this).find("#action_menu").show();
return false;
});
$actionLink.bind("mouseout", function(event) {
$(this).find("#action_menu").hide();
return false;
});
var $actionMenu = $detailsTab.find("#action_link #action_menu");
$actionMenu.find("#action_list").empty();
var midmenuItemId = primarystorageGetMidmenuId(jsonObj);
buildActionLinkForDetailsTab("Delete Primary Storage", primarystorageActionMap, $actionMenu, midmenuItemId, $detailsTab);
}
function primarystorageClearRigntPanel() {
primarystorageJsonClearDetailsTab(jsonObj);
}
function primarystorageJsonClearDetailsTab() {
var $detailsTab = $("#primarystorage_page").find("#tab_content_details");
$detailsTab.find("#id").text("");
$detailsTab.find("#name").text("");
$detailsTab.find("#zonename").text("");
$detailsTab.find("#podname").text("");
$detailsTab.find("#clustername").text("");
$detailsTab.find("#type").text("");
$detailsTab.find("#ipaddress").text("");
$detailsTab.find("#path").text("");
$detailsTab.find("#disksizetotal").text("");
$detailsTab.find("#disksizeallocated").text("");
$detailsTab.find("#tags").text("");
}
//***** primary storage page (end) *********************************************************************************************
@ -757,6 +791,7 @@ function afterLoadResourceJSP() {
initDialog("dialog_confirmation_force_reconnect");
initDialog("dialog_confirmation_remove_host");
initDialog("dialog_update_os");
initDialog("dialog_confirmation_delete_primarystorage");
// if hypervisor is KVM, limit the server option to NFS for now
if (getHypervisorType() == 'kvm')
@ -1448,4 +1483,35 @@ function doUpdateOSPreference($actionLink, $detailsTab, midmenuItemId){
$(this).dialog("close");
}
}).dialog("open");
}
var primarystorageActionMap = {
"Delete Primary Storage": {
isAsyncJob: false,
dialogBeforeActionFn : doDeletePrimaryStorage,
inProcessText: "Deleting Primary Storage....",
afterActionSeccessFn: function(json, id, midmenuItemId) {
var $midmenuItem1 = $("#"+midmenuItemId);
$midmenuItem1.remove();
clearRightPanel();
primarystorageClearRightPanel();
}
}
}
function doDeletePrimaryStorage($actionLink, $detailsTab, midmenuItemId){
var jsonObj = $detailsTab.data("jsonObj");
$("#dialog_confirmation_delete_primarystorage")
.dialog("option", "buttons", {
"OK": function() {
$(this).dialog("close");
var id = jsonObj.id;
var apiCommand = "command=deleteStoragePool&id="+id;
doActionToDetailsTab(id, $actionLink, apiCommand, midmenuItemId);
},
"Cancel": function() {
$(this).dialog("close");
}
}).dialog("open");
}