public inbox for pmg-devel@lists.proxmox.com
 help / color / mirror / Atom feed
From: Markus Frank <m.frank@proxmox.com>
To: pmg-devel@lists.proxmox.com
Subject: [pmg-devel] [PATCH widget-toolkit v1 1/2] window: add optional autocreate-role selector to openid realm edit
Date: Thu, 27 Feb 2025 08:55:16 +0100	[thread overview]
Message-ID: <20250227075517.3364-2-m.frank@proxmox.com> (raw)
In-Reply-To: <20250227075517.3364-1-m.frank@proxmox.com>

The enableRoleSelector option enables the role selector, and
roleSelector can be overridden with a specific role selector such as
pmgRoleSelector (displayfield is used as a placeholder for the role
selector).

Signed-off-by: Markus Frank <m.frank@proxmox.com>
---
 src/panel/AuthView.js        |  4 ++++
 src/window/AuthEditBase.js   |  6 ++++++
 src/window/AuthEditOpenId.js | 35 +++++++++++++++++++++++------------
 3 files changed, 33 insertions(+), 12 deletions(-)

diff --git a/src/panel/AuthView.js b/src/panel/AuthView.js
index 7bebf0d..2f777fc 100644
--- a/src/panel/AuthView.js
+++ b/src/panel/AuthView.js
@@ -14,6 +14,8 @@ Ext.define('Proxmox.panel.AuthView', {
 
     baseUrl: '/access/domains',
     storeBaseUrl: '/access/domains',
+    enableRoleSelector: false,
+    roleSelector: 'displayfield',
 
     columns: [
 	{
@@ -54,6 +56,8 @@ Ext.define('Proxmox.panel.AuthView', {
 
 	Ext.create('Proxmox.window.AuthEditBase', {
 	    baseUrl: me.baseUrl,
+	    enableRoleSelector: me.enableRoleSelector,
+	    roleSelector: me.roleSelector,
 	    useTypeInUrl,
 	    onlineHelp,
 	    authType,
diff --git a/src/window/AuthEditBase.js b/src/window/AuthEditBase.js
index e044235..861d082 100644
--- a/src/window/AuthEditBase.js
+++ b/src/window/AuthEditBase.js
@@ -12,6 +12,8 @@ Ext.define('Proxmox.window.AuthEditBase', {
 
     baseurl: '/access/domains',
     useTypeInUrl: false,
+    enableRoleSelector: false,
+    roleSelector: 'displayfield',
 
     initComponent: function() {
 	var me = this;
@@ -53,6 +55,8 @@ Ext.define('Proxmox.window.AuthEditBase', {
 			title: gettext('General'),
 			realm: me.realm,
 			xtype: authConfig.ipanel,
+			enableRoleSelector: me.enableRoleSelector,
+			roleSelector: me.roleSelector,
 			isCreate: me.isCreate,
 			useTypeInUrl: me.useTypeInUrl,
 			type: me.authType,
@@ -71,6 +75,8 @@ Ext.define('Proxmox.window.AuthEditBase', {
 	    items = [{
 		realm: me.realm,
 		xtype: authConfig.ipanel,
+		enableRoleSelector: me.enableRoleSelector,
+		roleSelector: me.roleSelector,
 		isCreate: me.isCreate,
 		useTypeInUrl: me.useTypeInUrl,
 		type: me.authType,
diff --git a/src/window/AuthEditOpenId.js b/src/window/AuthEditOpenId.js
index ed0a6dc..3610c71 100644
--- a/src/window/AuthEditOpenId.js
+++ b/src/window/AuthEditOpenId.js
@@ -66,18 +66,6 @@ Ext.define('Proxmox.panel.OpenIDInputPanel', {
 	    },
 	    name: 'client-key',
 	},
-    ],
-
-    column2: [
-	{
-	    xtype: 'proxmoxcheckbox',
-	    fieldLabel: gettext('Autocreate Users'),
-	    name: 'autocreate',
-	    value: 0,
-	    cbind: {
-		deleteEmpty: '{!isCreate}',
-	    },
-	},
 	{
 	    xtype: 'pmxDisplayEditField',
 	    name: 'username-claim',
@@ -98,6 +86,29 @@ Ext.define('Proxmox.panel.OpenIDInputPanel', {
 		editable: '{isCreate}',
 	    },
 	},
+    ],
+
+    column2: [
+	{
+	    xtype: 'proxmoxcheckbox',
+	    fieldLabel: gettext('Autocreate Users'),
+	    name: 'autocreate',
+	    value: 0,
+	    cbind: {
+		deleteEmpty: '{!isCreate}',
+	    },
+	},
+	{
+	    name: 'autocreate-role',
+	    allowBlank: true,
+	    deleteEmpty: false,
+	    fieldLabel: gettext('Autocreate Role'),
+	    cbind: {
+		xtype: '{roleSelector}',
+		disabled: '{!enableRoleSelector}',
+		hidden: '{!enableRoleSelector}',
+	    },
+	},
 	{
 	    xtype: 'proxmoxtextfield',
 	    name: 'scopes',
-- 
2.39.5



_______________________________________________
pmg-devel mailing list
pmg-devel@lists.proxmox.com
https://lists.proxmox.com/cgi-bin/mailman/listinfo/pmg-devel


  reply	other threads:[~2025-02-27  7:56 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-02-27  7:55 [pmg-devel] [PATCH widget-toolkit/pmg-api v1 0/2] add roleSelector for OIDC Markus Frank
2025-02-27  7:55 ` Markus Frank [this message]
2025-02-27  8:46   ` [pmg-devel] [PATCH widget-toolkit v1 1/2] window: add optional autocreate-role selector to openid realm edit Thomas Lamprecht
2025-02-27  7:55 ` [pmg-devel] [PATCH pmg-gui v1 2/2] realm: enable role selector for realm edit windows Markus Frank

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20250227075517.3364-2-m.frank@proxmox.com \
    --to=m.frank@proxmox.com \
    --cc=pmg-devel@lists.proxmox.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
Service provided by Proxmox Server Solutions GmbH | Privacy | Legal