[pbs-devel] [PATCH proxmox-backup 05/10] ui: make Sync/VerifyView and Edit usable without datastore
Dominik Csapak
d.csapak at proxmox.com
Mon Nov 9 16:01:25 CET 2020
we want to use this panel again for a 'global' overview, without
any datastore preselected, so we have to handle that, and
adding a datastore selector in the editwindow
Signed-off-by: Dominik Csapak <d.csapak at proxmox.com>
---
www/config/SyncView.js | 8 +++++---
www/config/VerifyView.js | 8 +++++---
www/window/SyncJobEdit.js | 11 ++++++++---
www/window/VerifyJobEdit.js | 11 ++++++++---
4 files changed, 26 insertions(+), 12 deletions(-)
diff --git a/www/config/SyncView.js b/www/config/SyncView.js
index 20fc5e86..24990ff0 100644
--- a/www/config/SyncView.js
+++ b/www/config/SyncView.js
@@ -162,9 +162,11 @@ Ext.define('PBS.config.SyncJobView', {
reload: function() { this.getView().getStore().rstore.load(); },
init: function(view) {
- view.getStore().rstore.getProxy().setExtraParams({
- store: view.datastore,
- });
+ let params = {};
+ if (view.datastore !== undefined) {
+ params.store = view.datastore;
+ }
+ view.getStore().rstore.getProxy().setExtraParams(params);
Proxmox.Utils.monStoreErrors(view, view.getStore().rstore);
},
},
diff --git a/www/config/VerifyView.js b/www/config/VerifyView.js
index da8e9889..8a0ed6d4 100644
--- a/www/config/VerifyView.js
+++ b/www/config/VerifyView.js
@@ -157,9 +157,11 @@ Ext.define('PBS.config.VerifyJobView', {
reload: function() { this.getView().getStore().rstore.load(); },
init: function(view) {
- view.getStore().rstore.getProxy().setExtraParams({
- store: view.datastore,
- });
+ let params = {};
+ if (view.datastore !== undefined) {
+ params.store = view.datastore;
+ }
+ view.getStore().rstore.getProxy().setExtraParams(params);
Proxmox.Utils.monStoreErrors(view, view.getStore().rstore);
},
},
diff --git a/www/window/SyncJobEdit.js b/www/window/SyncJobEdit.js
index 573a4af6..982cec93 100644
--- a/www/window/SyncJobEdit.js
+++ b/www/window/SyncJobEdit.js
@@ -113,6 +113,7 @@ Ext.define('PBS.window.SyncJobEdit', {
me.autoLoad = !!id;
me.scheduleValue = id ? null : 'hourly';
me.authid = id ? null : Proxmox.UserName;
+ me.editDatastore = me.datastore === undefined && me.isCreate;
return { };
},
@@ -128,14 +129,18 @@ Ext.define('PBS.window.SyncJobEdit', {
},
column1: [
{
- xtype: 'displayfield',
- name: 'store',
+ xtype: 'pmxDisplayEditField',
fieldLabel: gettext('Local Datastore'),
- allowBlank: false,
+ name: 'store',
submitValue: true,
cbind: {
+ editable: '{editDatastore}',
value: '{datastore}',
},
+ editConfig: {
+ xtype: 'pbsDataStoreSelector',
+ allowBlank: false,
+ },
},
{
fieldLabel: gettext('Local Owner'),
diff --git a/www/window/VerifyJobEdit.js b/www/window/VerifyJobEdit.js
index 48a181b6..6153c8e5 100644
--- a/www/window/VerifyJobEdit.js
+++ b/www/window/VerifyJobEdit.js
@@ -24,6 +24,7 @@ Ext.define('PBS.window.VerifyJobEdit', {
me.url = id ? `${baseurl}/${id}` : baseurl;
me.method = id ? 'PUT' : 'POST';
me.autoLoad = !!id;
+ me.editDatastore = me.datastore === undefined && me.isCreate;
return { };
},
@@ -45,14 +46,18 @@ Ext.define('PBS.window.VerifyJobEdit', {
},
column1: [
{
- xtype: 'displayfield',
+ xtype: 'pmxDisplayEditField',
+ fieldLabel: gettext('Local Datastore'),
name: 'store',
- fieldLabel: gettext('Datastore'),
- allowBlank: false,
submitValue: true,
cbind: {
+ editable: '{editDatastore}',
value: '{datastore}',
},
+ editConfig: {
+ xtype: 'pbsDataStoreSelector',
+ allowBlank: false,
+ },
},
{
xtype: 'pbsCalendarEvent',
--
2.20.1
More information about the pbs-devel
mailing list