]>
git.proxmox.com Git - pve-manager.git/blob - www/manager6/dc/UserTagAccessEdit.js
701d1de4f6813b6517e30bd5c7275a2ec5bd9ae0
1 Ext
.define('PVE.dc.UserTagAccessEdit', {
2 extend
: 'Proxmox.window.Edit',
3 alias
: 'widget.pveUserTagAccessEdit',
5 subject
: gettext('User Tag Access'),
6 onlineHelp
: 'datacenter_configuration_file',
8 url
: '/api2/extjs/cluster/options',
10 hintText
: gettext('NOTE: The following tags are also defined as registered tags.'),
13 xclass
: 'Ext.app.ViewController',
15 tagChange: function(field
, value
) {
17 let view
= me
.getView();
18 let also_registered
= [];
19 value
= Ext
.isArray(value
) ? value
: value
.split(';');
20 value
.forEach(tag
=> {
21 if (view
.registered_tags
.indexOf(tag
) !== -1) {
22 also_registered
.push(tag
);
25 let hint_field
= me
.lookup('hintField');
26 hint_field
.setVisible(also_registered
.length
> 0);
27 if (also_registered
.length
> 0) {
28 hint_field
.setValue(`${view.hintText} ${also_registered.join(', ')}`);
36 setValues: function(values
) {
37 this.up('pveUserTagAccessEdit').registered_tags
= values
?.['registered-tags'] ?? [];
38 let data
= values
?.['user-tag-access'] ?? {};
39 return Proxmox
.panel
.InputPanel
.prototype.setValues
.call(this, data
);
41 onGetValues: function(values
) {
42 if (values
=== undefined || Object
.keys(values
).length
=== 0) {
43 return { 'delete': name
};
46 'user-tag-access': PVE
.Parser
.printPropertyString(values
),
52 fieldLabel
: gettext('Mode'),
53 xtype
: 'proxmoxKVComboBox',
57 ['__default__', Proxmox
.Utils
.defaultText
+ ' (free)'],
59 ['existing', 'existing'],
63 defaultValue
: '__default__',
66 xtype
: 'displayfield',
67 fieldLabel
: gettext('Predefined Tags'),
70 name
: 'user-allow-list',
71 xtype
: 'pveListField',
72 emptyText
: gettext('No Tags defined'),
73 fieldTitle
: gettext('Tag'),
74 maskRe
: PVE
.Utils
.tagCharRegex
,
83 xtype
: 'displayfield',
84 reference
: 'hintField',