From c110e4e44389a17c5b74332ac2d75ce467727701 Mon Sep 17 00:00:00 2001 From: Jessica Wang Date: Thu, 7 Oct 2010 19:58:06 -0700 Subject: [PATCH] new UI - Service Offerings page - implement Create Service Offering action. --- ui/new/jsp/diskoffering.jsp | 111 +------------- ui/new/jsp/globalsetting.jsp | 111 +------------- ui/new/jsp/serviceoffering.jsp | 143 ++++++------------ ui/new/scripts/cloud.core2.serviceoffering.js | 88 ++++++++++- 4 files changed, 138 insertions(+), 315 deletions(-) diff --git a/ui/new/jsp/diskoffering.jsp b/ui/new/jsp/diskoffering.jsp index f0c5b0339f0..10c042d074f 100644 --- a/ui/new/jsp/diskoffering.jsp +++ b/ui/new/jsp/diskoffering.jsp @@ -6,7 +6,7 @@ Locale browserLocale = request.getLocale(); CloudResourceBundle t = CloudResourceBundle.getBundle("resources/resource", browserLocale); %> - +
- - - - - - - - - - - - - - - - - diff --git a/ui/new/jsp/globalsetting.jsp b/ui/new/jsp/globalsetting.jsp index 0c9cd28f60e..1195ea308ee 100644 --- a/ui/new/jsp/globalsetting.jsp +++ b/ui/new/jsp/globalsetting.jsp @@ -6,7 +6,7 @@ Locale browserLocale = request.getLocale(); CloudResourceBundle t = CloudResourceBundle.getBundle("resources/resource", browserLocale); %> - +
- - - - - - - - - - - - - - - - - diff --git a/ui/new/jsp/serviceoffering.jsp b/ui/new/jsp/serviceoffering.jsp index 6c9e924d09c..93002370055 100644 --- a/ui/new/jsp/serviceoffering.jsp +++ b/ui/new/jsp/serviceoffering.jsp @@ -6,7 +6,7 @@ Locale browserLocale = request.getLocale(); CloudResourceBundle t = CloudResourceBundle.getBundle("resources/resource", browserLocale); %> - +
- - \ No newline at end of file diff --git a/ui/new/scripts/cloud.core2.serviceoffering.js b/ui/new/scripts/cloud.core2.serviceoffering.js index cbddabc1c6d..8c91735145a 100644 --- a/ui/new/scripts/cloud.core2.serviceoffering.js +++ b/ui/new/scripts/cloud.core2.serviceoffering.js @@ -1,5 +1,91 @@ function afterLoadServiceOfferingJSP() { - + //dialogs + initDialog("dialog_add_service"); + + //add button *** + $("#midmenu_add_link").show(); + $("#midmenu_add_link").unbind("click").bind("click", function(event) { + var dialogAddService = $("#dialog_add_service"); + + dialogAddService.find("#add_service_name").val(""); + dialogAddService.find("#add_service_display").val(""); + dialogAddService.find("#add_service_cpucore").val(""); + dialogAddService.find("#add_service_cpu").val(""); + dialogAddService.find("#add_service_memory").val(""); + dialogAddService.find("#add_service_offerha").val("false"); + + (g_hypervisorType == "kvm")? dialogAddService.find("#add_service_offerha_container").hide():dialogAddService.find("#add_service_offerha_container").show(); + + dialogAddService + .dialog('option', 'buttons', { + "Add": function() { + var thisDialog = $(this); + + // validate values + var isValid = true; + isValid &= validateString("Name", thisDialog.find("#add_service_name"), thisDialog.find("#add_service_name_errormsg")); + isValid &= validateString("Display Text", thisDialog.find("#add_service_display"), thisDialog.find("#add_service_display_errormsg")); + isValid &= validateNumber("# of CPU Core", thisDialog.find("#add_service_cpucore"), thisDialog.find("#add_service_cpucore_errormsg"), 1, 1000); + isValid &= validateNumber("CPU", thisDialog.find("#add_service_cpu"), thisDialog.find("#add_service_cpu_errormsg"), 100, 100000); + isValid &= validateNumber("Memory", thisDialog.find("#add_service_memory"), thisDialog.find("#add_service_memory_errormsg"), 64, 1000000); + isValid &= validateString("Tags", thisDialog.find("#add_service_tags"), thisDialog.find("#add_service_tags_errormsg"), true); //optional + if (!isValid) + return; + + var $midmenuItem1 = beforeAddingMidMenuItem() ; + + var array1 = []; + var name = trim(thisDialog.find("#add_service_name").val()); + array1.push("&name="+todb(name)); + + var display = trim(thisDialog.find("#add_service_display").val()); + array1.push("&displayText="+todb(display)); + + var storagetype = trim(thisDialog.find("#add_service_storagetype").val()); + array1.push("&storageType="+storagetype); + + var core = trim(thisDialog.find("#add_service_cpucore").val()); + array1.push("&cpuNumber="+core); + + var cpu = trim(thisDialog.find("#add_service_cpu").val()); + array1.push("&cpuSpeed="+cpu); + + var memory = trim(thisDialog.find("#add_service_memory").val()); + array1.push("&memory="+memory); + + var offerha = thisDialog.find("#add_service_offerha").val(); + array1.push("&offerha="+offerha); + + var networkType = thisDialog.find("#add_service_networktype").val(); + var useVirtualNetwork = (networkType=="direct")? false:true; + array1.push("&usevirtualnetwork="+useVirtualNetwork); + + var tags = trim(thisDialog.find("#add_service_tags").val()); + if(tags != null && tags.length > 0) + array1.push("&tags="+todb(tags)); + + thisDialog.dialog("close"); + $.ajax({ + data: createURL("command=createServiceOffering"+array1.join("")+"&response=json"), + dataType: "json", + success: function(json) { + var item = json.createserviceofferingresponse; + serviceOfferingToMidmenu(item, $midmenuItem1); + bindClickToMidMenu($midmenuItem1, serviceOfferingToRigntPanel); + afterAddingMidMenuItem($midmenuItem1, true); + + }, + error: function(XMLHttpResponse) { + handleErrorInMidMenu(XMLHttpResponse, $midmenuItem1); + } + }); + }, + "Cancel": function() { + $(this).dialog("close"); + } + }).dialog("open"); + return false; + }); } function serviceOfferingToMidmenu(jsonObj, $midmenuItem1) {