]>
git.proxmox.com Git - pve-manager.git/blob - www/manager6/dc/RegisteredTagsEdit.js
1 Ext
.define('PVE.dc.RegisteredTagsEdit', {
2 extend
: 'Proxmox.window.Edit',
3 alias
: 'widget.pveRegisteredTagEdit',
5 subject
: gettext('Registered Tags'),
6 onlineHelp
: 'datacenter_configuration_file',
8 url
: '/api2/extjs/cluster/options',
10 hintText
: gettext('NOTE: The following tags are also defined in the user allow list.'),
13 xclass
: 'Ext.app.ViewController',
15 tagChange: function(field
, value
) {
17 let view
= me
.getView();
18 let also_allowed
= [];
19 value
= Ext
.isArray(value
) ? value
: value
.split(';');
20 value
.forEach(tag
=> {
21 if (view
.allowed_tags
.indexOf(tag
) !== -1) {
22 also_allowed
.push(tag
);
25 let hint_field
= me
.lookup('hintField');
26 hint_field
.setVisible(also_allowed
.length
> 0);
27 if (also_allowed
.length
> 0) {
28 hint_field
.setValue(`${view.hintText} ${also_allowed.join(', ')}`);
36 setValues: function(values
) {
37 let allowed_tags
= values
?.['user-tag-access']?.['user-allow-list'] ?? [];
38 this.up('pveRegisteredTagEdit').allowed_tags
= allowed_tags
;
39 let tags
= values
?.['registered-tags'];
40 return Proxmox
.panel
.InputPanel
.prototype.setValues
.call(this, { tags
});
42 onGetValues: function(values
) {
45 'delete': 'registered-tags',
49 'registered-tags': values
.tags
,
56 xtype
: 'pveListField',
57 maskRe
: PVE
.Utils
.tagCharRegex
,
61 emptyText
: gettext('No Tags defined'),
69 xtype
: 'displayfield',
70 reference
: 'hintField',