mirror of
https://git.proxmox.com/git/pve-manager
synced 2025-08-14 12:44:56 +00:00
ui: factor out pending changes revert button
makes no sense to have the, more or less, exact same 25 line method 5 times.. could be moved to widget TK, but that's for another time. Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
This commit is contained in:
parent
b8d53fbe54
commit
591efb6725
@ -8,6 +8,7 @@ JSSRC= \
|
|||||||
menu/MenuItem.js \
|
menu/MenuItem.js \
|
||||||
menu/TemplateMenu.js \
|
menu/TemplateMenu.js \
|
||||||
button/ConsoleButton.js \
|
button/ConsoleButton.js \
|
||||||
|
button/Revert.js \
|
||||||
button/Split.js \
|
button/Split.js \
|
||||||
controller/StorageEdit.js \
|
controller/StorageEdit.js \
|
||||||
qemu/CmdMenu.js \
|
qemu/CmdMenu.js \
|
||||||
|
38
www/manager6/button/Revert.js
Normal file
38
www/manager6/button/Revert.js
Normal file
@ -0,0 +1,38 @@
|
|||||||
|
Ext.define('PVE.button.PendingRevert', {
|
||||||
|
extend: 'Proxmox.button.Button',
|
||||||
|
alias: 'widget.pvePendingRevertButton',
|
||||||
|
|
||||||
|
text: gettext('Revert'),
|
||||||
|
disabled: true,
|
||||||
|
config: {
|
||||||
|
pendingGrid: null,
|
||||||
|
baseurl: undefined,
|
||||||
|
},
|
||||||
|
|
||||||
|
handler: function() {
|
||||||
|
let view = this.pendingGrid;
|
||||||
|
|
||||||
|
let rec = view.getSelectionModel().getSelection()[0];
|
||||||
|
if (!rec) return;
|
||||||
|
|
||||||
|
let rowdef = view.rows[rec.data.key] || {};
|
||||||
|
let keys = rowdef.multiKey || [ rec.data.key ];
|
||||||
|
|
||||||
|
Proxmox.Utils.API2Request({
|
||||||
|
url: this.baseurl || view.editorConfig.url,
|
||||||
|
waitMsgTarget: view,
|
||||||
|
selModel: view.getSelectionModel(),
|
||||||
|
method: 'PUT',
|
||||||
|
params: {
|
||||||
|
'revert': keys.join(',')
|
||||||
|
},
|
||||||
|
callback: () => view.reload(),
|
||||||
|
failure: (response) => Ext.Msg.alert('Error', response.htmlStatus),
|
||||||
|
});
|
||||||
|
},
|
||||||
|
|
||||||
|
initComponent: function() {
|
||||||
|
if (!this.pendingGrid) throw "revert button requires a pendingGrid";
|
||||||
|
this.callParent(arguments);
|
||||||
|
},
|
||||||
|
});
|
@ -213,37 +213,9 @@ Ext.define('PVE.lxc.DNS', {
|
|||||||
handler: run_editor
|
handler: run_editor
|
||||||
});
|
});
|
||||||
|
|
||||||
var revert_btn = new Proxmox.button.Button({
|
var revert_btn = new PVE.button.PendingRevert({
|
||||||
text: gettext('Revert'),
|
pendingGrid: me,
|
||||||
disabled: true,
|
|
||||||
handler: function() {
|
|
||||||
var sm = me.getSelectionModel();
|
|
||||||
var rec = sm.getSelection()[0];
|
|
||||||
if (!rec) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
var rowdef = me.rows[rec.data.key] || {};
|
|
||||||
var keys = rowdef.multiKey || [ rec.data.key ];
|
|
||||||
var revert = keys.join(',');
|
|
||||||
|
|
||||||
Proxmox.Utils.API2Request({
|
|
||||||
url: '/api2/extjs/' + baseurl,
|
|
||||||
waitMsgTarget: me,
|
|
||||||
method: 'PUT',
|
|
||||||
params: {
|
|
||||||
'revert': revert
|
|
||||||
},
|
|
||||||
callback: function() {
|
|
||||||
me.reload();
|
|
||||||
},
|
|
||||||
failure: function (response, opts) {
|
|
||||||
Ext.Msg.alert('Error',response.htmlStatus);
|
|
||||||
}
|
|
||||||
});
|
});
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
|
|
||||||
var set_button_status = function() {
|
var set_button_status = function() {
|
||||||
var sm = me.getSelectionModel();
|
var sm = me.getSelectionModel();
|
||||||
|
@ -161,35 +161,8 @@ Ext.define('PVE.lxc.Options', {
|
|||||||
handler: function() { me.run_editor(); }
|
handler: function() { me.run_editor(); }
|
||||||
});
|
});
|
||||||
|
|
||||||
var revert_btn = new Proxmox.button.Button({
|
var revert_btn = new PVE.button.PendingRevert({
|
||||||
text: gettext('Revert'),
|
pendingGrid: me,
|
||||||
disabled: true,
|
|
||||||
handler: function() {
|
|
||||||
var sm = me.getSelectionModel();
|
|
||||||
var rec = sm.getSelection()[0];
|
|
||||||
if (!rec) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
var rowdef = me.rows[rec.data.key] || {};
|
|
||||||
var keys = rowdef.multiKey || [ rec.data.key ];
|
|
||||||
var revert = keys.join(',');
|
|
||||||
|
|
||||||
Proxmox.Utils.API2Request({
|
|
||||||
url: '/api2/extjs/' + baseurl,
|
|
||||||
waitMsgTarget: me,
|
|
||||||
method: 'PUT',
|
|
||||||
params: {
|
|
||||||
'revert': revert
|
|
||||||
},
|
|
||||||
callback: function() {
|
|
||||||
me.reload();
|
|
||||||
},
|
|
||||||
failure: function (response, opts) {
|
|
||||||
Ext.Msg.alert('Error',response.htmlStatus);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
});
|
});
|
||||||
|
|
||||||
var set_button_status = function() {
|
var set_button_status = function() {
|
||||||
|
@ -215,29 +215,8 @@ Ext.define('PVE.lxc.RessourceView', {
|
|||||||
handler: run_move
|
handler: run_move
|
||||||
});
|
});
|
||||||
|
|
||||||
var revert_btn = new Proxmox.button.Button({
|
var revert_btn = new PVE.button.PendingRevert({
|
||||||
text: gettext('Revert'),
|
pendingGrid: me,
|
||||||
selModel: me.selModel,
|
|
||||||
disabled: true,
|
|
||||||
handler: function(b, e, rec) {
|
|
||||||
var rowdef = me.rows[rec.data.key] || {};
|
|
||||||
var keys = rowdef.multiKey || [ rec.data.key ];
|
|
||||||
var revert = keys.join(',');
|
|
||||||
Proxmox.Utils.API2Request({
|
|
||||||
url: '/api2/extjs/' + baseurl,
|
|
||||||
waitMsgTarget: me,
|
|
||||||
method: 'PUT',
|
|
||||||
params: {
|
|
||||||
'revert': revert
|
|
||||||
},
|
|
||||||
callback: function() {
|
|
||||||
me.rstore.load();
|
|
||||||
},
|
|
||||||
failure: function (response, opts) {
|
|
||||||
Ext.Msg.alert('Error',response.htmlStatus);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
});
|
});
|
||||||
|
|
||||||
var set_button_status = function() {
|
var set_button_status = function() {
|
||||||
|
@ -500,29 +500,9 @@ Ext.define('PVE.qemu.HardwareView', {
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
var revert_btn = new Proxmox.button.Button({
|
var revert_btn = new PVE.button.PendingRevert({
|
||||||
text: gettext('Revert'),
|
pendingGrid: me,
|
||||||
selModel: sm,
|
baseurl: '/api2/extjs/' + baseurl,
|
||||||
disabled: true,
|
|
||||||
handler: function(b, e, rec) {
|
|
||||||
var rowdef = me.rows[rec.data.key] || {};
|
|
||||||
var keys = rowdef.multiKey || [ rec.data.key ];
|
|
||||||
var revert = keys.join(',');
|
|
||||||
Proxmox.Utils.API2Request({
|
|
||||||
url: '/api2/extjs/' + baseurl,
|
|
||||||
waitMsgTarget: me,
|
|
||||||
method: 'PUT',
|
|
||||||
params: {
|
|
||||||
'revert': revert
|
|
||||||
},
|
|
||||||
callback: function() {
|
|
||||||
reload();
|
|
||||||
},
|
|
||||||
failure: function (response, opts) {
|
|
||||||
Ext.Msg.alert('Error',response.htmlStatus);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
});
|
});
|
||||||
|
|
||||||
var efidisk_menuitem = Ext.create('Ext.menu.Item',{
|
var efidisk_menuitem = Ext.create('Ext.menu.Item',{
|
||||||
|
@ -309,35 +309,8 @@ Ext.define('PVE.qemu.Options', {
|
|||||||
handler: function() { me.run_editor(); }
|
handler: function() { me.run_editor(); }
|
||||||
});
|
});
|
||||||
|
|
||||||
var revert_btn = new Proxmox.button.Button({
|
var revert_btn = new PVE.button.PendingRevert({
|
||||||
text: gettext('Revert'),
|
pendingGrid: me,
|
||||||
disabled: true,
|
|
||||||
handler: function() {
|
|
||||||
var sm = me.getSelectionModel();
|
|
||||||
var rec = sm.getSelection()[0];
|
|
||||||
if (!rec) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
var rowdef = me.rows[rec.data.key] || {};
|
|
||||||
var keys = rowdef.multiKey || [ rec.data.key ];
|
|
||||||
var revert = keys.join(',');
|
|
||||||
|
|
||||||
Proxmox.Utils.API2Request({
|
|
||||||
url: '/api2/extjs/' + baseurl,
|
|
||||||
waitMsgTarget: me,
|
|
||||||
method: 'PUT',
|
|
||||||
params: {
|
|
||||||
'revert': revert
|
|
||||||
},
|
|
||||||
callback: function() {
|
|
||||||
me.reload();
|
|
||||||
},
|
|
||||||
failure: function (response, opts) {
|
|
||||||
Ext.Msg.alert('Error',response.htmlStatus);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
});
|
});
|
||||||
|
|
||||||
var set_button_status = function() {
|
var set_button_status = function() {
|
||||||
|
Loading…
Reference in New Issue
Block a user