ui: tape restore: fix form validation for datastore mapping
'defaultStore' can be '' or null, so check for truthyness also, we want the mapping to be a formField so that the validation triggers and the restore button gets en/disabled accordingly. We still have to call 'getValue' manually, because the onGetValues will get it as string instead of an array Signed-off-by: Dominik Csapak <d.csapak@proxmox.com> Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
This commit is contained in:
parent
d74172bfc1
commit
3ae4dab4b9
@ -383,6 +383,8 @@ Ext.define('PBS.TapeManagement.TapeRestoreWindow', {
|
||||
let defaultNs = values.defaultNs;
|
||||
delete values.defaultNs;
|
||||
|
||||
// we have to get it manually but want it to be a form field
|
||||
delete values.mapping;
|
||||
let [ds_map, ns_map] = me.down('pbsDataStoreMappingField').getValue();
|
||||
if (ds_map !== '') {
|
||||
datastores.push(ds_map);
|
||||
@ -474,7 +476,7 @@ Ext.define('PBS.TapeManagement.TapeRestoreWindow', {
|
||||
},
|
||||
{
|
||||
xtype: 'pbsDataStoreMappingField',
|
||||
isFormField: false,
|
||||
name: 'mapping',
|
||||
reference: 'mappingGrid',
|
||||
height: 240,
|
||||
defaultBindProperty: 'value',
|
||||
@ -565,7 +567,7 @@ Ext.define('PBS.TapeManagement.DataStoreMappingGrid', {
|
||||
let me = this;
|
||||
let error = false;
|
||||
|
||||
if (me.getViewModel().get('defaultStore') !== '') {
|
||||
if (!me.getViewModel().get('defaultStore')) {
|
||||
error = true;
|
||||
me.getStore().each(rec => {
|
||||
if (rec.data.target) {
|
||||
|
Loading…
Reference in New Issue
Block a user