diff --git a/ui/new/jsp/diskoffering.jsp b/ui/new/jsp/diskoffering.jsp index 10c042d074f..e515ad88e69 100644 --- a/ui/new/jsp/diskoffering.jsp +++ b/ui/new/jsp/diskoffering.jsp @@ -112,3 +112,37 @@ + + + + diff --git a/ui/new/scripts/cloud.core2.diskoffering.js b/ui/new/scripts/cloud.core2.diskoffering.js index d7c034b5787..8e07bd16961 100644 --- a/ui/new/scripts/cloud.core2.diskoffering.js +++ b/ui/new/scripts/cloud.core2.diskoffering.js @@ -1,5 +1,66 @@ function afterLoadDiskOfferingJSP() { - + initDialog("dialog_add_disk"); + + //add button *** + $("#midmenu_add_link").show(); + $("#midmenu_add_link").unbind("click").bind("click", function(event) { + var dialogAddDisk = $("#dialog_add_disk"); + dialogAddDisk.find("#disk_name").val(""); + dialogAddDisk.find("#disk_description").val(""); + dialogAddDisk.find("#disk_disksize").val(""); + var submenuContent = $("#submenu_content_disk"); + + dialogAddDisk + .dialog('option', 'buttons', { + "Add": function() { + var thisDialog = $(this); + + // validate values + var isValid = true; + isValid &= validateString("Name", thisDialog.find("#add_disk_name"), thisDialog.find("#add_disk_name_errormsg")); + isValid &= validateString("Description", thisDialog.find("#add_disk_description"), thisDialog.find("#add_disk_description_errormsg")); + isValid &= validateNumber("Disk size", thisDialog.find("#add_disk_disksize"), thisDialog.find("#add_disk_disksize_errormsg"), 0, null); + isValid &= validateString("Tags", thisDialog.find("#add_disk_tags"), thisDialog.find("#add_disk_tags_errormsg"), true); //optional + if (!isValid) + return; + thisDialog.dialog("close"); + + var $midmenuItem1 = beforeAddingMidMenuItem() ; + + var array1 = []; + var name = trim(thisDialog.find("#add_disk_name").val()); + array1.push("&name="+todb(name)); + + var description = trim(thisDialog.find("#add_disk_description").val()); + array1.push("&displaytext="+todb(description)); + + var disksize = trim(thisDialog.find("#add_disk_disksize").val()); + array1.push("&disksize="+disksize); + + var tags = trim(thisDialog.find("#add_disk_tags").val()); + if(tags != null && tags.length > 0) + array1.push("&tags="+todb(tags)); + + $.ajax({ + data: createURL("command=createDiskOffering&isMirrored=false&response=json" + array1.join("")), + dataType: "json", + success: function(json) { + var item = json.creatediskofferingresponse; + diskOfferingToMidmenu(item, $midmenuItem1); + bindClickToMidMenu($midmenuItem1, diskOfferingToRigntPanel); + afterAddingMidMenuItem($midmenuItem1, true); + }, + error: function(XMLHttpResponse) { + handleErrorInMidMenu(XMLHttpResponse, $midmenuItem1); + } + }); + }, + "Cancel": function() { + $(this).dialog("close"); + } + }).dialog("open"); + return false; + }); } function diskOfferingToMidmenu(jsonObj, $midmenuItem1) { diff --git a/ui/new/scripts/cloud.core2.serviceoffering.js b/ui/new/scripts/cloud.core2.serviceoffering.js index 8c91735145a..b4e5bf99b20 100644 --- a/ui/new/scripts/cloud.core2.serviceoffering.js +++ b/ui/new/scripts/cloud.core2.serviceoffering.js @@ -31,6 +31,7 @@ function afterLoadServiceOfferingJSP() { isValid &= validateString("Tags", thisDialog.find("#add_service_tags"), thisDialog.find("#add_service_tags_errormsg"), true); //optional if (!isValid) return; + thisDialog.dialog("close"); var $midmenuItem1 = beforeAddingMidMenuItem() ; @@ -62,9 +63,8 @@ function afterLoadServiceOfferingJSP() { var tags = trim(thisDialog.find("#add_service_tags").val()); if(tags != null && tags.length > 0) - array1.push("&tags="+todb(tags)); + array1.push("&tags="+todb(tags)); - thisDialog.dialog("close"); $.ajax({ data: createURL("command=createServiceOffering"+array1.join("")+"&response=json"), dataType: "json",