]>
git.proxmox.com Git - pve-manager.git/blob - www/manager6/dc/ACLView.js
1 Ext
.define('PVE.dc.ACLAdd', {
2 extend
: 'PVE.window.Edit',
3 alias
: ['widget.pveACLAdd'],
7 initComponent : function() {
15 xtype
: me
.path
? 'hiddenfield' : 'textfield',
19 fieldLabel
: gettext('Path')
23 if (me
.aclType
=== 'group') {
24 me
.subject
= gettext("Group Permission");
26 xtype
: 'pveGroupSelector',
28 fieldLabel
: gettext('Group')
30 } else if (me
.aclType
=== 'user') {
31 me
.subject
= gettext("User Permission");
33 xtype
: 'pveUserSelector',
35 fieldLabel
: gettext('User')
38 throw "unknown ACL type";
42 xtype
: 'pveRoleSelector',
45 fieldLabel
: gettext('Role')
54 fieldLabel
: gettext('Propagate')
58 var ipanel
= Ext
.create('PVE.panel.InputPanel', {
60 onlineHelp
: 'pveum_permission_management'
71 Ext
.define('PVE.dc.ACLView', {
72 extend
: 'Ext.grid.GridPanel',
74 alias
: ['widget.pveACLView'],
76 onlineHelp
: 'chapter_user_management',
84 initComponent : function() {
87 var store
= Ext
.create('Ext.data.Store',{
91 url
: "/api2/json/access/acl"
100 store
.addFilter(Ext
.create('Ext.util.Filter',{
101 filterFn: function(item
) {
102 if (item
.data
.path
=== me
.path
) {
109 var render_ugid = function(ugid
, metaData
, record
) {
110 if (record
.data
.type
== 'group') {
119 header
: gettext('User') + '/' + gettext('Group'),
122 renderer
: render_ugid
,
126 header
: gettext('Role'),
135 header
: gettext('Path'),
141 header
: gettext('Propagate'),
144 dataIndex
: 'propagate'
148 var sm
= Ext
.create('Ext.selection.RowModel', {});
150 var reload = function() {
154 var remove_btn
= new Proxmox
.button
.Button({
155 text
: gettext('Remove'),
158 confirmMsg
: gettext('Are you sure you want to remove this entry'),
159 handler: function(btn
, event
, rec
) {
163 roles
: rec
.data
.roleid
165 if (rec
.data
.type
=== 'group') {
166 params
.groups
= rec
.data
.ugid
;
167 } else if (rec
.data
.type
=== 'user') {
168 params
.users
= rec
.data
.ugid
;
170 throw 'unknown data type';
173 Proxmox
.Utils
.API2Request({
178 callback: function() {
181 failure: function (response
, opts
) {
182 Ext
.Msg
.alert(gettext('Error'), response
.htmlStatus
);
188 Proxmox
.Utils
.monStoreErrors(me
, store
);
195 text
: gettext('Add'),
200 text
: gettext('Group Permission'),
201 iconCls
: 'fa fa-fw fa-group',
202 handler: function() {
203 var win
= Ext
.create('PVE.dc.ACLAdd',{
207 win
.on('destroy', reload
);
212 text
: gettext('User Permission'),
213 iconCls
: 'fa fa-fw fa-user',
214 handler: function() {
215 var win
= Ext
.create('PVE.dc.ACLAdd',{
219 win
.on('destroy', reload
);
241 Ext
.define('pve-acl', {
242 extend
: 'Ext.data.Model',
244 'path', 'type', 'ugid', 'roleid',