mirror of
https://github.com/apache/cloudstack.git
synced 2025-10-26 08:42:29 +01:00
82 lines
2.4 KiB
JavaScript
82 lines
2.4 KiB
JavaScript
(function(cloudStack) {
|
|
|
|
var replaceNullValueWith = {
|
|
'xennetworklabel': 'Use default gateway',
|
|
'xennetworklabel': 'Use default gateway',
|
|
'xennetworklabel': 'Use default gateway'
|
|
};
|
|
|
|
cloudStack.sections['global-settings'] = {
|
|
title: 'Global Settings',
|
|
id: 'global-settings',
|
|
listView: {
|
|
label: 'Global Settings',
|
|
actions: {
|
|
edit: {
|
|
label: 'Change value',
|
|
action: function(args) {
|
|
var name = args.context["global-settings"].name;
|
|
var value = args.data.value;
|
|
|
|
if((name in replaceNullValueWith) && (value == replaceNullValueWith[name])) {
|
|
args.response.success({data: args.context["global-settings"]});
|
|
}
|
|
else {
|
|
$.ajax({
|
|
url: createURL(
|
|
'updateConfiguration&name=' + todb(name) + '&value=' + todb(value)
|
|
),
|
|
dataType: 'json',
|
|
async: true,
|
|
success: function(json) {
|
|
var item = json.updateconfigurationresponse.configuration;
|
|
cloudStack.dialog.notice({ message: 'Please restart your management server for your change to take effect.' });
|
|
args.response.success({data: item});
|
|
},
|
|
error: function(json) {
|
|
args.response.error(parseXMLHttpResponse(json));
|
|
}
|
|
});
|
|
}
|
|
}
|
|
}
|
|
},
|
|
fields: {
|
|
name: { label: 'Name', id: true },
|
|
description: { label: 'Description' },
|
|
value: { label: 'Value', editable: true }
|
|
},
|
|
dataProvider: function(args) {
|
|
var data = {
|
|
page: args.page,
|
|
pagesize: pageSize
|
|
};
|
|
|
|
if (args.filterBy.search.value) {
|
|
data.name = args.filterBy.search.value;
|
|
}
|
|
|
|
$.ajax({
|
|
url: createURL('listConfigurations'),
|
|
data: data,
|
|
dataType: "json",
|
|
async: true,
|
|
success: function(json) {
|
|
var configurationObjs = json.listconfigurationsresponse.configuration;
|
|
|
|
var items = [];
|
|
$(configurationObjs).each(function(){
|
|
if((this.name in replaceNullValueWith) && (this.value == null)) {
|
|
this.value = replaceNullValueWith[this.name];
|
|
}
|
|
items.push(this);
|
|
});
|
|
|
|
args.response.success({ data: items });
|
|
}
|
|
});
|
|
}
|
|
}
|
|
};
|
|
})(cloudStack);
|