[pve-devel] [PATCH manager v3 18/20] add showProgress to SafeDestroy
Fabian Grünbichler
f.gruenbichler at proxmox.com
Thu Aug 31 11:38:21 CEST 2017
modeled after the mechanism used in window/Edit.js
Signed-off-by: Fabian Grünbichler <f.gruenbichler at proxmox.com>
---
changed in v3:
- close view befor showing alert in failure case
- drop trailing , to satisfy jslint
new in v2
www/manager6/window/SafeDestroy.js | 26 ++++++++++++++++++++++++--
1 file changed, 24 insertions(+), 2 deletions(-)
diff --git a/www/manager6/window/SafeDestroy.js b/www/manager6/window/SafeDestroy.js
index a7ecf5fd..451ab046 100644
--- a/www/manager6/window/SafeDestroy.js
+++ b/www/manager6/window/SafeDestroy.js
@@ -13,6 +13,7 @@ Ext.define('PVE.window.SafeDestroy', {
width: 450,
layout: { type:'hbox' },
defaultFocus: 'confirmField',
+ showProgress: false,
config: {
item: {
@@ -61,10 +62,31 @@ Ext.define('PVE.window.SafeDestroy', {
method: 'DELETE',
waitMsgTarget: view,
failure: function(response, opts) {
+ view.close();
Ext.Msg.alert('Error', response.htmlStatus);
},
- callback: function() {
- view.close();
+ success: function(response, options) {
+ var hasProgressBar = view.showProgress &&
+ response.result.data ? true : false;
+
+ if (hasProgressBar) {
+ // stay around so we can trigger our close events
+ // when background action is completed
+ view.hide();
+
+ var upid = response.result.data;
+ var win = Ext.create('PVE.window.TaskProgress', {
+ upid: upid,
+ listeners: {
+ destroy: function () {
+ view.close();
+ }
+ }
+ });
+ win.show();
+ } else {
+ view.close();
+ }
}
});
}
--
2.11.0
More information about the pve-devel
mailing list