dns: optionally send delete for optional values

pbs only deletes the optional values here when they are sent with the
'delete' parameter, in contrast to pve/pmg that don't have a delete
parameter currently and always use the parameters as source of truth.

So to handle that, optionally set deleteEmpty if set from outside

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
This commit is contained in:
Dominik Csapak 2024-03-01 10:03:40 +01:00 committed by Thomas Lamprecht
parent 9c69fc1b8f
commit e3cf77e177
2 changed files with 10 additions and 0 deletions

View File

@ -2,6 +2,9 @@ Ext.define('Proxmox.node.DNSEdit', {
extend: 'Proxmox.window.Edit', extend: 'Proxmox.window.Edit',
alias: ['widget.proxmoxNodeDNSEdit'], alias: ['widget.proxmoxNodeDNSEdit'],
// pbs needs this set to true
deleteEmpty: false,
initComponent: function() { initComponent: function() {
let me = this; let me = this;
@ -21,6 +24,7 @@ Ext.define('Proxmox.node.DNSEdit', {
fieldLabel: gettext('DNS server') + " 1", fieldLabel: gettext('DNS server') + " 1",
vtype: 'IP64Address', vtype: 'IP64Address',
skipEmptyText: true, skipEmptyText: true,
deleteEmpty: me.deleteEmpty,
name: 'dns1', name: 'dns1',
}, },
{ {
@ -28,6 +32,7 @@ Ext.define('Proxmox.node.DNSEdit', {
fieldLabel: gettext('DNS server') + " 2", fieldLabel: gettext('DNS server') + " 2",
vtype: 'IP64Address', vtype: 'IP64Address',
skipEmptyText: true, skipEmptyText: true,
deleteEmpty: me.deleteEmpty,
name: 'dns2', name: 'dns2',
}, },
{ {
@ -35,6 +40,7 @@ Ext.define('Proxmox.node.DNSEdit', {
fieldLabel: gettext('DNS server') + " 3", fieldLabel: gettext('DNS server') + " 3",
vtype: 'IP64Address', vtype: 'IP64Address',
skipEmptyText: true, skipEmptyText: true,
deleteEmpty: me.deleteEmpty,
name: 'dns3', name: 'dns3',
}, },
]; ];

View File

@ -2,6 +2,9 @@ Ext.define('Proxmox.node.DNSView', {
extend: 'Proxmox.grid.ObjectGrid', extend: 'Proxmox.grid.ObjectGrid',
alias: ['widget.proxmoxNodeDNSView'], alias: ['widget.proxmoxNodeDNSView'],
// pbs needs this set to true
deleteEmpty: false,
initComponent: function() { initComponent: function() {
let me = this; let me = this;
@ -12,6 +15,7 @@ Ext.define('Proxmox.node.DNSView', {
let run_editor = () => Ext.create('Proxmox.node.DNSEdit', { let run_editor = () => Ext.create('Proxmox.node.DNSEdit', {
autoShow: true, autoShow: true,
nodename: me.nodename, nodename: me.nodename,
deleteEmpty: me.deleteEmpty,
}); });
Ext.apply(me, { Ext.apply(me, {