From 82ed13c7d7f35914ec7d3a1a78cab62f3f24ca15 Mon Sep 17 00:00:00 2001 From: Dominik Csapak Date: Wed, 12 May 2021 16:42:32 +0200 Subject: [PATCH] ui: add node options under 'Configuration -> Options' for now only http-proxy lives there, but we will add more options later, such as * email from * default gui language Signed-off-by: Dominik Csapak --- www/Makefile | 1 + www/SystemConfiguration.js | 5 +++++ www/config/NodeOptionView.js | 42 ++++++++++++++++++++++++++++++++++++ 3 files changed, 48 insertions(+) create mode 100644 www/config/NodeOptionView.js diff --git a/www/Makefile b/www/Makefile index f0b795ca..517cbd23 100644 --- a/www/Makefile +++ b/www/Makefile @@ -54,6 +54,7 @@ JSSRC= \ config/VerifyView.js \ config/WebauthnView.js \ config/CertificateView.js \ + config/NodeOptionView.js \ window/ACLEdit.js \ window/AddTfaRecovery.js \ window/AddTotp.js \ diff --git a/www/SystemConfiguration.js b/www/SystemConfiguration.js index 025e0273..211c9c08 100644 --- a/www/SystemConfiguration.js +++ b/www/SystemConfiguration.js @@ -65,6 +65,11 @@ Ext.define('PBS.SystemConfiguration', { }, ], }, + { + title: gettext('Options'), + itemId: 'options', + xtype: 'pbsNodeOptionView', + }, ], initComponent: function() { diff --git a/www/config/NodeOptionView.js b/www/config/NodeOptionView.js new file mode 100644 index 00000000..beeea35f --- /dev/null +++ b/www/config/NodeOptionView.js @@ -0,0 +1,42 @@ +Ext.define('PBS.NodeOptionView', { + extend: 'Proxmox.grid.ObjectGrid', + alias: 'widget.pbsNodeOptionView', + + monStoreErrors: true, + + url: `/api2/json/nodes/${Proxmox.NodeName}/config`, + editorConfig: { + url: `/api2/extjs/nodes/${Proxmox.NodeName}/config`, + }, + interval: 5000, + cwidth1: 200, + + listeners: { + itemdblclick: function() { this.run_editor() }, + }, + + tbar: [ + { + text: gettext('Edit'), + xtype: 'proxmoxButton', + disabled: true, + handler: function() { this.up('grid').run_editor(); }, + } + ], + + initComponent: function() { + let me = this; + + me.add_text_row('http-proxy', gettext('HTTP proxy'), { + defaultValue: Proxmox.Utils.noneText, + vtype: 'HttpProxy', + deleteEmpty: true, + }); + + me.callParent(); + + me.on('activate', me.rstore.startUpdate); + me.on('destroy', me.rstore.stopUpdate); + me.on('deactivate', me.rstore.stopUpdate); + }, +});