]> git.proxmox.com Git - pve-manager.git/blob - www/manager6/button/Revert.js
88293641b82dc9297039d6d31c1a470d36876bcf
[pve-manager.git] / www / manager6 / button / Revert.js
1 Ext.define('PVE.button.PendingRevert', {
2 extend: 'Proxmox.button.Button',
3 alias: 'widget.pvePendingRevertButton',
4
5 text: gettext('Revert'),
6 disabled: true,
7 config: {
8 pendingGrid: null,
9 apiurl: undefined,
10 },
11
12 handler: function() {
13 if (!this.pendingGrid) {
14 this.pendingGrid = this.up('proxmoxPendingObjectGrid');
15 if (!this.pendingGrid) throw "revert button requires a pendingGrid";
16 }
17 let view = this.pendingGrid;
18
19 let rec = view.getSelectionModel().getSelection()[0];
20 if (!rec) return;
21
22 let rowdef = view.rows[rec.data.key] || {};
23 let keys = rowdef.multiKey || [ rec.data.key ];
24
25 Proxmox.Utils.API2Request({
26 url: this.apiurl || view.editorConfig.url,
27 waitMsgTarget: view,
28 selModel: view.getSelectionModel(),
29 method: 'PUT',
30 params: {
31 'revert': keys.join(',')
32 },
33 callback: () => view.reload(),
34 failure: (response) => Ext.Msg.alert('Error', response.htmlStatus),
35 });
36 },
37 });