new UI - Service Offerings page - implement UpdateServiceOfferings action.

This commit is contained in:
Jessica Wang 2010-10-11 13:05:37 -07:00
parent 2942a89ca0
commit 54cb20e228
2 changed files with 61 additions and 6 deletions

View File

@ -63,6 +63,8 @@
<div class="grid_row_cell" style="width: 79%;">
<div class="row_celltitles" id="name">
</div>
<input class="text" id="name_edit" style="width: 200px; display: none;" type="text" />
<div id="name_edit_errormsg" style="display:none"></div>
</div>
</div>
<div class="grid_rows odd">
@ -73,6 +75,8 @@
<div class="grid_row_cell" style="width: 79%;">
<div class="row_celltitles" id="displaytext">
</div>
<input class="text" id="displaytext_edit" style="width: 200px; display: none;" type="text" />
<div id="displaytext_edit_errormsg" style="display:none"></div>
</div>
</div>
<div class="grid_rows even">
@ -113,6 +117,10 @@
<div class="grid_row_cell" style="width: 79%;">
<div class="row_celltitles" id="offerha">
</div>
<select class="select" id="offerha_edit" style="width: 202px; display: none;">
<option value="false">No</option>
<option value="true">Yes</option>
</select>
</div>
</div>
<div class="grid_rows even">

View File

@ -1,8 +1,15 @@
function afterLoadServiceOfferingJSP() {
//dialogs
initDialog("dialog_add_service");
var $detailsTab = $("#right_panel_content #tab_content_details");
//edit button ***
var $readonlyFields = $detailsTab.find("#name, #displaytext, #passwordenabled");
var $editFields = $detailsTab.find("#name_edit, #displaytext_edit, #passwordenabled_edit");
initializeEditFunction($readonlyFields, $editFields, doUpdateServiceOffering);
//add button ***
//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");
@ -88,6 +95,38 @@ function afterLoadServiceOfferingJSP() {
});
}
function doUpdateServiceOffering() {
var $detailsTab = $("#right_panel_content #tab_content_details");
var jsonObj = $detailsTab.data("jsonObj");
var id = jsonObj.id;
// validate values
var isValid = true;
isValid &= validateString("Name", $detailsTab.find("#name_edit"), $detailsTab.find("#name_edit_errormsg"), true);
isValid &= validateString("Display Text", $detailsTab.find("#displaytext_edit"), $detailsTab.find("#displaytext_edit_errormsg"), true);
if (!isValid)
return;
var array1 = [];
var name = $detailsTab.find("#name_edit").val();
array1.push("&name="+todb(name));
var displaytext = $detailsTab.find("#displaytext_edit").val();
array1.push("&displayText="+todb(displaytext));
var offerha = $detailsTab.find("#offerha_edit").val();
array1.push("&offerha="+offerha);
$.ajax({
data: createURL("command=updateServiceOffering&id="+id+array1.join("")),
dataType: "json",
success: function(json) {
var jsonObj = json.updateserviceofferingresponse;
var $midmenuItem1 = $("#"+getMidmenuId(jsonObj));
serviceOfferingToMidmenu(jsonObj, $midmenuItem1);
serviceOfferingToRigntPanel($midmenuItem1);
}
});
}
function serviceOfferingToMidmenu(jsonObj, $midmenuItem1) {
$midmenuItem1.attr("id", getMidmenuId(jsonObj));
$midmenuItem1.data("jsonObj", jsonObj);
@ -99,8 +138,8 @@ function serviceOfferingToMidmenu(jsonObj, $midmenuItem1) {
$midmenuItem1.find("#second_row").text(jsonObj.cpunumber + " x " + convertHz(jsonObj.cpuspeed));
}
function serviceOfferingToRigntPanel($midmenuItem) {
var jsonObj = $midmenuItem.data("jsonObj");
function serviceOfferingToRigntPanel($midmenuItem1) {
var jsonObj = $midmenuItem1.data("jsonObj");
serviceOfferingJsonToDetailsTab(jsonObj);
}
@ -108,12 +147,20 @@ function serviceOfferingJsonToDetailsTab(jsonObj) {
var $detailsTab = $("#right_panel_content #tab_content_details");
$detailsTab.data("jsonObj", jsonObj);
$detailsTab.find("#id").text(jsonObj.id);
$detailsTab.find("#name").text(fromdb(jsonObj.name));
$detailsTab.find("#name_edit").val(fromdb(jsonObj.name));
$detailsTab.find("#displaytext").text(fromdb(jsonObj.displaytext));
$detailsTab.find("#displaytext_edit").val(fromdb(jsonObj.displaytext));
$detailsTab.find("#storagetype").text(jsonObj.storagetype);
$detailsTab.find("#cpu").text(jsonObj.cpunumber + " x " + convertHz(jsonObj.cpuspeed));
$detailsTab.find("#memory").text(convertBytes(parseInt(jsonObj.memory)*1024*1024));
$detailsTab.find("#offerha").text(toBooleanText(jsonObj.offerha));
setBooleanField(jsonObj.offerha, $detailsTab.find("#offerha"));
$detailsTab.find("#offerha_edit").val(jsonObj.offerha);
$detailsTab.find("#networktype").text(toNetworkType(jsonObj.usevirtualnetwork));
$detailsTab.find("#tags").text(fromdb(jsonObj.tags));
setDateField(jsonObj.created, $detailsTab.find("#created"));