From c5be8d39c94a2d19bdf1dd8b88e3969bced24bda Mon Sep 17 00:00:00 2001 From: Dominik Csapak Date: Thu, 1 Jul 2021 14:25:06 +0200 Subject: [PATCH] ui: Workspace: use domains info to hide password/tfa items in the user menu we have to make an additional api call here, since it is the only place (currently) where we can get the realm type Signed-off-by: Dominik Csapak [ Thomas: adapt to move of parse_userid to widget-toolkit ] Signed-off-by: Thomas Lamprecht --- www/manager6/Workspace.js | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/www/manager6/Workspace.js b/www/manager6/Workspace.js index b93ba669..d67a2472 100644 --- a/www/manager6/Workspace.js +++ b/www/manager6/Workspace.js @@ -172,6 +172,23 @@ Ext.define('PVE.StdWorkspace', { } }, }); + + Proxmox.Utils.API2Request({ + url: '/access/domains', + method: 'GET', + success: function(response) { + let [_username, realm] = Proxmox.Utils.parse_userid(Proxmox.UserName); + response.result.data.forEach((domain) => { + if (domain.realm === realm) { + let schema = PVE.Utils.authSchema[domain.type]; + if (schema) { + me.query('#tfaitem')[0].setHidden(!schema.tfa); + me.query('#passworditem')[0].setHidden(!schema.pwchange); + } + } + }); + }, + }); } }, @@ -353,6 +370,7 @@ Ext.define('PVE.StdWorkspace', { }, { text: gettext('Password'), + itemId: 'passworditem', iconCls: 'fa fa-fw fa-key', handler: function() { var win = Ext.create('Proxmox.window.PasswordEdit', { @@ -363,6 +381,7 @@ Ext.define('PVE.StdWorkspace', { }, { text: 'TFA', + itemId: 'tfaitem', iconCls: 'fa fa-fw fa-lock', handler: function(btn, event, rec) { var win = Ext.create('PVE.window.TFAEdit', {