Commit 973b550e authored by Dietmar Maurer's avatar Dietmar Maurer

fix node filter

parent 90d506fc
...@@ -47,35 +47,32 @@ Ext.define('PVE.dc.BackupEdit', { ...@@ -47,35 +47,32 @@ Ext.define('PVE.dc.BackupEdit', {
} }
}); });
var column1 = [ var nodesel = Ext.create('PVE.form.NodeSelector', {
{ name: 'node',
xtype: 'PVE.form.NodeSelector', fieldLabel: 'Node',
name: 'node', allowBlank: true,
fieldLabel: 'Node', editable: true,
allowBlank: true, autoSelect: false,
editable: true, emptyText: '-- any --',
autoSelect: false, listeners: {
emptyText: '-- any --', change: function(f, value) {
listeners: { storagesel.setNodename(value || 'localhost');
change: function(f, value) { var mode = selModeField.getValue();
storagesel.setNodename(value || 'localhost'); sm.setLocked(false); // else selection gets confused
var mode = selModeField.getValue(); store.clearFilter();
sm.setLocked(false); // else selection gets confused store.filterBy(function(rec) {
store.clearFilter(); return (!value || rec.get('node') === value);
if (value) { });
store.filterBy(function(rec) { if (mode === 'all') {
if (rec.get('node') === value) { sm.selectAll(true);
return true; sm.setLocked(true);
}
});
}
if (mode === 'all') {
sm.selectAll(true);
sm.setLocked(true);
}
} }
} }
}, }
});
var column1 = [
nodesel,
storagesel, storagesel,
{ {
xtype: 'pveDayOfWeekSelector', xtype: 'pveDayOfWeekSelector',
...@@ -179,7 +176,7 @@ Ext.define('PVE.dc.BackupEdit', { ...@@ -179,7 +176,7 @@ Ext.define('PVE.dc.BackupEdit', {
}); });
var update_vmid_selection = function(list, mode) { var update_vmid_selection = function(list, mode) {
if (!insideUpdate) { if (insideUpdate) {
return; // should not happen - just to be sure return; // should not happen - just to be sure
} }
insideUpdate = true; insideUpdate = true;
...@@ -218,9 +215,15 @@ Ext.define('PVE.dc.BackupEdit', { ...@@ -218,9 +215,15 @@ Ext.define('PVE.dc.BackupEdit', {
}); });
var reload = function() { var reload = function() {
sm.setLocked(false);
store.load({ store.load({
params: { type: 'vm' }, params: { type: 'vm' },
callback: function() { callback: function() {
var node = nodesel.getValue();
store.clearFilter();
store.filterBy(function(rec) {
return (!node || rec.get('node') === node);
});
var list = vmidField.getValue(); var list = vmidField.getValue();
var mode = selModeField.getValue(); var mode = selModeField.getValue();
if (mode === 'all') { if (mode === 'all') {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment