proxmox-widget-toolkit/src/window/AuthEditOpenId.js
Thomas Lamprecht 0dce277c5a ui: OpenID realm: allow to edit scopes
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2021-11-19 07:36:19 +01:00

108 lines
2.0 KiB
JavaScript

Ext.define('Proxmox.panel.OpenIDInputPanel', {
extend: 'Proxmox.panel.InputPanel',
xtype: 'pmxAuthOpenIDPanel',
mixins: ['Proxmox.Mixin.CBind'],
type: 'openid',
onGetValues: function(values) {
let me = this;
if (me.isCreate) {
values.type = me.type;
}
return values;
},
columnT: [
{
xtype: 'textfield',
name: 'issuer-url',
fieldLabel: gettext('Issuer URL'),
allowBlank: false,
},
],
column1: [
{
xtype: 'pmxDisplayEditField',
name: 'realm',
cbind: {
value: '{realm}',
editable: '{isCreate}',
},
fieldLabel: gettext('Realm'),
allowBlank: false,
},
{
xtype: 'proxmoxtextfield',
fieldLabel: gettext('Client ID'),
name: 'client-id',
allowBlank: false,
},
{
xtype: 'proxmoxtextfield',
fieldLabel: gettext('Client Key'),
cbind: {
deleteEmpty: '{!isCreate}',
},
name: 'client-key',
},
],
column2: [
{
xtype: 'proxmoxcheckbox',
fieldLabel: gettext('Autocreate Users'),
name: 'autocreate',
value: 0,
cbind: {
deleteEmpty: '{!isCreate}',
},
},
{
xtype: 'pmxDisplayEditField',
name: 'username-claim',
fieldLabel: gettext('Username Claim'),
editConfig: {
xtype: 'proxmoxKVComboBox',
editable: true,
comboItems: [
['__default__', Proxmox.Utils.defaultText],
['subject', 'subject'],
['username', 'username'],
['email', 'email'],
],
},
cbind: {
value: get => get('isCreate') ? '__default__' : Proxmox.Utils.defaultText,
deleteEmpty: '{!isCreate}',
editable: '{isCreate}',
},
},
{
xtype: 'proxmoxtextfield',
name: 'scopes',
fieldLabel: gettext('Scopes'),
emptyText: `${Proxmox.Utils.defaultText} (email profile)`,
submitEmpty: false,
cbind: {
deleteEmpty: '{!isCreate}',
},
},
],
columnB: [
{
xtype: 'textfield',
name: 'comment',
fieldLabel: gettext('Comment'),
cbind: {
deleteEmpty: '{!isCreate}',
},
},
],
});