]>
git.proxmox.com Git - pmg-gui.git/blob - js/UserView.js
1 Ext
.define('pmg-users', {
2 extend
: 'Ext.data.Model',
4 'userid', 'firstname', 'lastname' , 'email', 'comment',
5 'role', 'keys', 'realm',
6 { type
: 'boolean', name
: 'enable' },
7 { type
: 'date', dateFormat
: 'timestamp', name
: 'expire' }
11 url
: "/api2/json/access/users"
16 Ext
.define('PMG.UserView', {
17 extend
: 'Ext.grid.GridPanel',
18 alias
: 'widget.pmgUserView',
22 xclass
: 'Ext.app.ViewController',
24 renderUsername: function(userid
) {
25 return userid
.match(/^(.+)(@[^@]+)$/)[1];
28 renderFullName: function(firstname
, metaData
, record
) {
29 var first
= firstname
|| '';
30 var last
= record
.data
.lastname
|| '';
31 return first
+ " " + last
;
35 var view
= this.getView();
37 var win
= Ext
.create('PMG.UserEdit', {});
38 win
.on('destroy', function() { view
.reload() });
43 var view
= this.getView();
45 var rec
= view
.selModel
.getSelection()[0];
47 var win
= Ext
.create('PMG.UserEdit', {
48 userid
: rec
.data
.userid
50 win
.on('destroy', function() { view
.reload() });
54 onPassword: function(btn
, event
, rec
) {
55 var view
= this.getView();
57 var win
= Ext
.create('Proxmox.window.PasswordEdit',{
58 userid
: rec
.data
.userid
60 win
.on('destroy', function() { view
.reload() });
64 onAfterRemove: function(btn
, res
) {
65 var view
= this.getView();
72 itemdblclick
: 'onEdit',
82 xtype
: 'proxmoxButton',
83 text
: gettext('Edit'),
88 xtype
: 'proxmoxStdRemoveButton',
89 baseurl
: '/access/users',
90 reference
: 'removeBtn',
91 callback
: 'onAfterRemove',
95 xtype
: 'proxmoxButton',
96 text
: gettext('Password'),
104 header
: gettext('User name'),
107 renderer
: 'renderUsername',
111 header
: gettext('Realm'),
117 header
: gettext('Enabled'),
120 renderer
: Proxmox
.Utils
.format_boolean
,
124 header
: gettext('Expire'),
127 renderer
: Proxmox
.Utils
.format_expire
,
131 header
: gettext('Name'),
134 renderer
: 'renderFullName',
135 dataIndex
: 'firstname'
138 header
: gettext('Comment'),
140 renderer
: Ext
.String
.htmlEncode
,
141 dataIndex
: 'comment',
152 initComponent : function() {
155 me
.store
= new Ext
.data
.Store({