Alerts UI: Implement multi-select delete/archive alerts

This commit is contained in:
Brian Federle 2013-10-31 16:39:42 -07:00
parent e8f8185393
commit 2e07c452e3
1 changed files with 69 additions and 0 deletions

View File

@ -453,6 +453,7 @@
listView: {
id: 'alerts',
label: 'label.menu.alerts',
multiSelect: true,
fields: {
description: {
label: 'label.description'
@ -468,6 +469,40 @@
actions: {
// Remove multiple Alerts
removeMulti: {
label: 'label.delete.alerts',
isHeader: true,
addRow: false,
isMultiSelectAction: true,
messages: {
confirm: function(args) {
return 'Please confirm you would like to remove the selected alerts';
},
notification: function(args) {
return 'label.delete.alerts';
}
},
action: function(args) {
var events = args.context.alerts;
$.ajax({
url: createURL("deleteAlerts"),
data: {
ids: $(events).map(function(index, event) {
return event.id;
}).toArray().join(',')
},
success: function(data) {
args.response.success();
$(window).trigger('cloudStack.fullRefresh');
},
error:function(data) {
args.response.error(parseXMLHttpResponse(data));
}
});
}
},
remove: {
label: 'label.delete.alerts',
isHeader: true,
@ -533,6 +568,40 @@
},
// Archive multiple Alerts
archiveMulti: {
label: 'label.archive.alerts',
isHeader: true,
addRow: false,
isMultiSelectAction: true,
messages: {
confirm: function(args) {
return 'Please confirm you would like to archive the selected alerts';
},
notification: function(args) {
return 'label.archive.alerts';
}
},
action: function(args) {
var events = args.context.alerts;
$.ajax({
url: createURL("archiveAlerts"),
data: {
ids: $(events).map(function(index, event) {
return event.id;
}).toArray().join(',')
},
success: function(data) {
args.response.success();
$(window).trigger('cloudStack.fullRefresh');
},
error:function(data) {
args.response.error(parseXMLHttpResponse(data));
}
});
}
},
archive: {
label: 'label.archive.alerts',
isHeader: true,