]>
git.proxmox.com Git - pve-manager.git/blob - www/manager/dc/UserView.js
1 Ext
.define('PVE.dc.UserView', {
2 extend
: 'Ext.grid.GridPanel',
4 alias
: ['widget.pveUserView'],
6 initComponent : function() {
9 var store
= new Ext
.data
.Store({
18 var reload = function() {
22 var remove_btn
= new Ext
.Button({
23 text
: gettext('Remove'),
27 var sm
= me
.getSelectionModel();
28 var rec
= sm
.getSelection()[0];
33 var userid
= rec
.data
.userid
;
35 msg
= 'Are you sure you want to permanently delete the user: ' + userid
;
36 Ext
.Msg
.confirm('Deletion Confirmation', msg
, function(btn
) {
41 PVE
.Utils
.API2Request({
42 url
: '/access/users/' + userid
,
45 callback: function() {
48 failure: function (response
, opts
) {
49 Ext
.Msg
.alert('Error',response
.htmlStatus
);
56 var run_editor = function() {
57 var sm
= me
.getSelectionModel();
58 var rec
= sm
.getSelection()[0];
63 var win
= Ext
.create('PVE.dc.UserEdit',{
64 userid
: rec
.data
.userid
66 win
.on('destroy', reload
);
70 var edit_btn
= new Ext
.Button({
71 text
: gettext('Edit'),
76 var set_button_status = function() {
77 var sm
= me
.getSelectionModel();
78 var rec
= sm
.getSelection()[0];
86 edit_btn
.setDisabled(false);
88 remove_btn
.setDisabled(rec
.data
.userid
=== 'root@pam');
93 text
: gettext('Create'),
95 var win
= Ext
.create('PVE.dc.UserEdit',{
97 win
.on('destroy', reload
);
104 var render_expire = function(date
) {
108 return Ext
.Date
.format(date
, "Y-m-d");
111 var render_full_name = function(firstname
, metaData
, record
) {
113 var first
= firstname
|| '';
114 var last
= record
.data
.lastname
|| '';
115 return first
+ " " + last
;
118 var render_username = function(userid
) {
119 return userid
.match(/^([^@]+)/)[1];
122 var render_realm = function(userid
) {
123 return userid
.match(/@([^@]+)$/)[1];
137 header
: gettext('User name'),
140 renderer
: render_username
,
144 header
: gettext('Realm'),
147 renderer
: render_realm
,
151 header
: gettext('Enabled'),
157 header
: gettext('Expire'),
160 renderer
: render_expire
,
164 header
: gettext('Name'),
167 renderer
: render_full_name
,
168 dataIndex
: 'firstname'
172 header
: gettext('Comment'),
174 dataIndex
: 'comment',
180 itemdblclick
: run_editor
,
181 selectionchange
: set_button_status