diff --git a/www/manager6/sdn/ControllerView.js b/www/manager6/sdn/ControllerView.js index 3bd3e8cf..8d92a715 100644 --- a/www/manager6/sdn/ControllerView.js +++ b/www/manager6/sdn/ControllerView.js @@ -39,53 +39,36 @@ Ext.define('PVE.sdn.ControllerView', { }, }); - var reload = function() { - store.load(); - }; + let sm = Ext.create('Ext.selection.RowModel', {}); - var sm = Ext.create('Ext.selection.RowModel', {}); - - var set_button_status = function() { - var rec = me.selModel.getSelection()[0]; - - if (!rec || rec.data.state === 'deleted') { - edit_btn.disable(); - remove_btn.disable(); - } - }; - - var run_editor = function() { - var rec = sm.getSelection()[0]; + let run_editor = function() { + let rec = sm.getSelection()[0]; if (!rec) { return; } - var type = rec.data.type, - controller = rec.data.controller; - + let type = rec.data.type, controller = rec.data.controller; me.createSDNControllerEditWindow(type, controller); }; - var edit_btn = new Proxmox.button.Button({ + let edit_btn = new Proxmox.button.Button({ text: gettext('Edit'), disabled: true, selModel: sm, handler: run_editor, }); - var remove_btn = Ext.create('Proxmox.button.StdRemoveButton', { + let remove_btn = Ext.create('Proxmox.button.StdRemoveButton', { selModel: sm, baseurl: '/cluster/sdn/controllers/', - callback: reload, + callback: () => store.load(), }); // else we cannot dynamically generate the add menu handlers - var addHandleGenerator = function(type) { + let addHandleGenerator = function(type) { return function() { me.createSDNControllerEditWindow(type); }; }; - var addMenuItems = [], type; - - for (type in PVE.Utils.sdncontrollerSchema) { - var controller = PVE.Utils.sdncontrollerSchema[type]; + let addMenuItems = []; + for (const [type, controller] of Object.entries(PVE.Utils.sdncontrollerSchema)) { if (controller.hideAdd) { continue; } @@ -98,7 +81,7 @@ Ext.define('PVE.sdn.ControllerView', { Ext.apply(me, { store: store, - reloadStore: reload, + reloadStore: () => store.load(), selModel: sm, viewConfig: { trackOver: false, @@ -119,7 +102,6 @@ Ext.define('PVE.sdn.ControllerView', { flex: 2, sortable: true, dataIndex: 'controller', - dataIndex: 'controller', renderer: function(value, metaData, rec) { return PVE.Utils.render_sdn_pending(rec, value, 'controller', 1); }, @@ -152,7 +134,7 @@ Ext.define('PVE.sdn.ControllerView', { }, ], listeners: { - activate: reload, + activate: () => store.load(), itemdblclick: run_editor, }, }); diff --git a/www/manager6/sdn/DnsView.js b/www/manager6/sdn/DnsView.js index 05771449..d1654cab 100644 --- a/www/manager6/sdn/DnsView.js +++ b/www/manager6/sdn/DnsView.js @@ -37,10 +37,6 @@ Ext.define('PVE.sdn.DnsView', { }, }); - let reload = function() { - store.load(); - }; - let sm = Ext.create('Ext.selection.RowModel', {}); let run_editor = function() { @@ -64,17 +60,15 @@ Ext.define('PVE.sdn.DnsView', { let remove_btn = Ext.create('Proxmox.button.StdRemoveButton', { selModel: sm, baseurl: '/cluster/sdn/dns/', - callback: reload, + callback: () => store.load(), }); // else we cannot dynamically generate the add menu handlers let addHandleGenerator = function(type) { return function() { me.createSDNEditWindow(type); }; }; - let addMenuItems = [], type; - - for (type in PVE.Utils.sdndnsSchema) { - let dns = PVE.Utils.sdndnsSchema[type]; + let addMenuItems = []; + for (const [type, dns] of Object.entries(PVE.Utils.sdndnsSchema)) { if (dns.hideAdd) { continue; } @@ -87,7 +81,7 @@ Ext.define('PVE.sdn.DnsView', { Ext.apply(me, { store: store, - reloadStore: reload, + reloadStore: () => store.load(), selModel: sm, viewConfig: { trackOver: false, @@ -121,7 +115,7 @@ Ext.define('PVE.sdn.DnsView', { }, ], listeners: { - activate: reload, + activate: () => store.load(), itemdblclick: run_editor, }, }); diff --git a/www/manager6/sdn/IpamView.js b/www/manager6/sdn/IpamView.js index 38d76671..0d00d8e6 100644 --- a/www/manager6/sdn/IpamView.js +++ b/www/manager6/sdn/IpamView.js @@ -37,10 +37,6 @@ Ext.define('PVE.sdn.IpamView', { }, }); - let reload = function() { - store.load(); - }; - let sm = Ext.create('Ext.selection.RowModel', {}); let run_editor = function() { @@ -48,9 +44,7 @@ Ext.define('PVE.sdn.IpamView', { if (!rec) { return; } - let type = rec.data.type, - ipam = rec.data.ipam; - + let type = rec.data.type, ipam = rec.data.ipam; me.createSDNEditWindow(type, ipam); }; @@ -64,17 +58,15 @@ Ext.define('PVE.sdn.IpamView', { let remove_btn = Ext.create('Proxmox.button.StdRemoveButton', { selModel: sm, baseurl: '/cluster/sdn/ipams/', - callback: reload, + callback: () => store.load(), }); // else we cannot dynamically generate the add menu handlers let addHandleGenerator = function(type) { return function() { me.createSDNEditWindow(type); }; }; - let addMenuItems = [], type; - - for (type in PVE.Utils.sdnipamSchema) { - let ipam = PVE.Utils.sdnipamSchema[type]; + let addMenuItems = []; + for (const [type, ipam] of Object.entries(PVE.Utils.sdnipamSchema)) { if (ipam.hideAdd) { continue; } @@ -87,7 +79,7 @@ Ext.define('PVE.sdn.IpamView', { Ext.apply(me, { store: store, - reloadStore: reload, + reloadStore: () => store.load(), selModel: sm, viewConfig: { trackOver: false, @@ -121,7 +113,7 @@ Ext.define('PVE.sdn.IpamView', { }, ], listeners: { - activate: reload, + activate: () => store.load(), itemdblclick: run_editor, }, }); diff --git a/www/manager6/sdn/SubnetView.js b/www/manager6/sdn/SubnetView.js index 673a1580..98321f8c 100644 --- a/www/manager6/sdn/SubnetView.js +++ b/www/manager6/sdn/SubnetView.js @@ -10,45 +10,37 @@ Ext.define('PVE.sdn.SubnetView', { remove_btn: undefined, setBaseUrl: function(url) { - var me = this; + let me = this; - me.base_url = url; + me.base_url = url; - if (url === undefined) { - me.store.removeAll(); - } else { - me.remove_btn.baseurl = url + '/'; - me.store.setProxy({ - type: 'proxmox', - url: '/api2/json/' + url + '?pending=1', - }); - - me.store.load(); - } + if (url === undefined) { + me.store.removeAll(); + me.create_btn.disable(); + } else { + me.remove_btn.baseurl = url + '/'; + me.store.setProxy({ + type: 'proxmox', + url: '/api2/json/' + url + '?pending=1', + }); + me.create_btn.enable(); + me.store.load(); + } }, initComponent: function() { let me = this; - var store = new Ext.data.Store({ - model: 'pve-sdn-subnet', - }); + let store = new Ext.data.Store({ + model: 'pve-sdn-subnet', + }); - var reload = function() { - store.load(); - }; + let reload = function() { + store.load(); + }; let sm = Ext.create('Ext.selection.RowModel', {}); - var set_button_status = function() { - var rec = me.selModel.getSelection()[0]; - - if (!rec || rec.data.state === 'deleted') { - edit_btn.disable(); - remove_btn.disable(); - } - }; - let run_editor = function() { let rec = sm.getSelection()[0]; @@ -70,11 +62,18 @@ Ext.define('PVE.sdn.SubnetView', { me.remove_btn = Ext.create('Proxmox.button.StdRemoveButton', { selModel: sm, baseurl: me.base_url + '/', - callback: function() { - reload(); - }, + callback: () => store.load(), }); + let set_button_status = function() { + var rec = me.selModel.getSelection()[0]; + + if (!rec || rec.data.state === 'deleted') { + edit_btn.disable(); + me.remove_btn.disable(); + } + }; + Ext.apply(me, { store: store, reloadStore: reload, @@ -102,25 +101,25 @@ Ext.define('PVE.sdn.SubnetView', { header: 'ID', flex: 2, dataIndex: 'cidr', - renderer: function(value, metaData, rec) { - return PVE.Utils.render_sdn_pending(rec, value, 'cidr', 1); - }, + renderer: function(value, metaData, rec) { + return PVE.Utils.render_sdn_pending(rec, value, 'cidr', 1); + }, }, { header: gettext('Gateway'), flex: 1, dataIndex: 'gateway', - renderer: function(value, metaData, rec) { - return PVE.Utils.render_sdn_pending(rec, value, 'gateway'); - }, + renderer: function(value, metaData, rec) { + return PVE.Utils.render_sdn_pending(rec, value, 'gateway'); + }, }, { header: 'SNAT', flex: 1, dataIndex: 'snat', - renderer: function(value, metaData, rec) { - return PVE.Utils.render_sdn_pending(rec, value, 'snat'); - }, + renderer: function(value, metaData, rec) { + return PVE.Utils.render_sdn_pending(rec, value, 'snat'); + }, }, { header: gettext('Dns prefix'), @@ -143,7 +142,7 @@ Ext.define('PVE.sdn.SubnetView', { listeners: { activate: reload, itemdblclick: run_editor, - selectionchange: set_button_status, + selectionchange: set_button_status, }, }); diff --git a/www/manager6/sdn/VnetView.js b/www/manager6/sdn/VnetView.js index f6c7a18d..ce496d52 100644 --- a/www/manager6/sdn/VnetView.js +++ b/www/manager6/sdn/VnetView.js @@ -28,15 +28,6 @@ Ext.define('PVE.sdn.VnetView', { let sm = Ext.create('Ext.selection.RowModel', {}); - var set_button_status = function() { - var rec = me.selModel.getSelection()[0]; - - if (!rec || rec.data.state === 'deleted') { - edit_btn.disable(); - remove_btn.disable(); - } - }; - let run_editor = function() { let rec = sm.getSelection()[0]; @@ -61,6 +52,15 @@ Ext.define('PVE.sdn.VnetView', { callback: reload, }); + let set_button_status = function() { + var rec = me.selModel.getSelection()[0]; + + if (!rec || rec.data.state === 'deleted') { + edit_btn.disable(); + remove_btn.disable(); + } + }; + Ext.apply(me, { store: store, reloadStore: reload, @@ -138,8 +138,8 @@ Ext.define('PVE.sdn.VnetView', { itemdblclick: run_editor, selectionchange: set_button_status, show: reload, - select: function(sm, rec) { - var url = '/cluster/sdn/vnets/' + rec.data.vnet + '/subnets'; + select: function(_sm, rec) { + let url = `/cluster/sdn/vnets/${rec.data.vnet}/subnets`; me.subnetview_panel.setBaseUrl(url); }, deselect: function() { diff --git a/www/manager6/sdn/ZoneView.js b/www/manager6/sdn/ZoneView.js index dd6ebdc8..ac812d4a 100644 --- a/www/manager6/sdn/ZoneView.js +++ b/www/manager6/sdn/ZoneView.js @@ -45,15 +45,6 @@ Ext.define('PVE.sdn.ZoneView', { let sm = Ext.create('Ext.selection.RowModel', {}); - var set_button_status = function() { - var rec = me.selModel.getSelection()[0]; - - if (!rec || rec.data.state === 'deleted') { - edit_btn.disable(); - remove_btn.disable(); - } - }; - let run_editor = function() { let rec = sm.getSelection()[0]; if (!rec) { @@ -78,14 +69,21 @@ Ext.define('PVE.sdn.ZoneView', { callback: reload, }); + let set_button_status = function() { + var rec = me.selModel.getSelection()[0]; + + if (!rec || rec.data.state === 'deleted') { + edit_btn.disable(); + remove_btn.disable(); + } + }; + // else we cannot dynamically generate the add menu handlers let addHandleGenerator = function(type) { return function() { me.createSDNEditWindow(type); }; }; - let addMenuItems = [], type; - - for (type in PVE.Utils.sdnzoneSchema) { - let zone = PVE.Utils.sdnzoneSchema[type]; + let addMenuItems = []; + for (const [type, zone] of Object.entries(PVE.Utils.sdnzoneSchema)) { if (zone.hideAdd) { continue; }