]>
git.proxmox.com Git - proxmox-backup.git/blob - www/config/UserView.js
7a869d44cf0b5726493fe9cd82b50eabe14f0b9a
1 Ext
.define('pmx-users', {
2 extend
: 'Ext.data.Model',
4 'userid', 'firstname', 'lastname', 'email', 'comment',
5 { type
: 'boolean', name
: 'enable', defaultValue
: true },
6 { type
: 'date', dateFormat
: 'timestamp', name
: 'expire' },
11 url
: '/api2/json/access/users',
15 Ext
.define('PBS.config.UserView', {
16 extend
: 'Ext.grid.GridPanel',
17 alias
: 'widget.pbsUserView',
20 stateId
: 'grid-users',
22 title
: gettext('Users'),
25 xclass
: 'Ext.app.ViewController',
29 Ext
.create('PBS.window.UserEdit', {
38 editUser: function() {
40 let view
= me
.getView();
41 let selection
= view
.getSelection();
42 if (selection
.length
< 1) return;
44 Ext
.create('PBS.window.UserEdit', {
45 userid
: selection
[0].data
.userid
,
54 renderUsername: function(userid
) {
55 return Ext
.String
.htmlEncode(userid
.match(/^(.+)@([^@]+)$/)[1]);
58 renderRealm: function(userid
) {
59 return Ext
.String
.htmlEncode(userid
.match(/^(.+)@([^@]+)$/)[2]);
62 reload: function() { this.getView().getStore().rstore
.load(); },
64 init: function(view
) {
65 Proxmox
.Utils
.monStoreErrors(view
, view
.getStore().rstore
);
71 itemdblclick
: 'editUser',
77 autoDestroyRstore
: true,
90 xtype
: 'proxmoxButton',
96 xtype
: 'proxmoxButton',
97 text
: gettext('Edit'),
102 xtype
: 'proxmoxStdRemoveButton',
103 baseurl
: '/access/users/',
104 enableFn
: (rec
) => rec
.data
.userid
!== 'root@pam',
115 header
: gettext('User name'),
118 renderer
: 'renderUsername',
122 header
: gettext('Realm'),
125 renderer
: 'renderRealm',
129 header
: gettext('Enabled'),
132 renderer
: Proxmox
.Utils
.format_boolean
,
136 header
: gettext('Expire'),
139 renderer
: Proxmox
.Utils
.format_expire
,
143 header
: gettext('Name'),
146 dataIndex
: 'firstname',
149 header
: gettext('Comment'),
151 renderer
: Ext
.String
.htmlEncode
,
152 dataIndex
: 'comment',