1 //<script type="text/javascript">
3 // Auto generated file - created by app.Builder.js- do not edit directly (at present!)
5 Roo.namespace('Pman.Tab');
7 Pman.Tab.BAdminStaff = new Roo.XComponent({
10 'b15aafc19dc2ba4b788adf77268d8ca4' :"Hide Inactive",
11 'ce8ae9da5b7cd6c3df2929543a9af92d' :"Email",
12 'f29c99f082755399839b64ebaf9f608a' :"List / View",
13 '4f3cdff2e6a5e08440be182ef40d93f7' :"Print / Export",
14 'ec211f7c20af43e742bf2570c3cb84f9' :"Add",
15 'a37ede293936e29279ed543129451ec3' :"Groups",
16 '7dce122004969d56ae2e0245cb754d35' :"Edit",
17 '05b763f7d24f32575493b3c23f299b0e' :"Add To Group",
18 'e0a7cc944485bdedafb92b0cf98632fa' :"Remove From Group",
19 'bcc254b55c4a1babdf1dcb82c207506b' :"Phone",
20 '25f57527ae8a27c94fb5230b5486c743' :"Permission List",
21 '09f0c5159c5e34504e453eff3fc70324' :"Account Management",
22 '054176c3a541fb2d4b63e29360c749aa' :"Members List",
23 '8a25a3ae30ab6e8ceb5b8c4009a3336f' :"Role / Position",
24 '17050e1914aff1e423a84e76db8ab0d1' :"[All]",
25 '5bc3fd20294c17c9803942958fd7f26d' :"Show Inactive",
26 '4d1c8263ba1036754f8db14a98f9f006' :"Reload",
27 'f2a6c498fb90ee345d997f888fce3b18' :"Delete",
28 'ec3249f16ee5880d4c1acb752e5c925f' :"Switch to Selected User",
29 '4d3d769b812b6faa6b76e1a8abaece2d' :"Active",
30 '49ee3087348e8d44e1feda1917443987' :"Name",
31 'e55f75a29310d7b60f7ac1d390c8ae42' :"Module",
32 'b5a7adde1af5c87d7fd797b6245c2a39' :"Description",
33 'aba9f7d7443652e858969bfc280690b1' :"Manage Groups"
36 'activeButton_offtext' : '5bc3fd20294c17c9803942958fd7f26d' /* Show Inactive */ ,
37 'activeButton_ontext' : 'b15aafc19dc2ba4b788adf77268d8ca4' /* Hide Inactive */ ,
38 'activeButton_html' : '5bc3fd20294c17c9803942958fd7f26d' /* Show Inactive */
41 part : ["BAdmin", "Staff" ],
42 order : '003-Pman.Tab.BAdminStaff',
44 parent : 'Pman.Tab.BAdmin',
45 name : "unnamed module",
48 _tree : function(_data)
55 title : _this._strings['09f0c5159c5e34504e453eff3fc70324'] /* Account Management */,
57 activate : function (_self)
59 if ( _this.group_grid) {
60 _this.group_grid.store.load({});
64 xns : Roo.bootstrap.panel,
65 '|xns' : 'Roo.bootstrap.panel',
68 xns : Roo.bootstrap.layout,
69 '|xns' : 'Roo.bootstrap.layout',
73 xns : Roo.bootstrap.layout,
74 '|xns' : 'Roo.bootstrap.layout'
81 xns : Roo.bootstrap.layout,
82 '|xns' : 'Roo.bootstrap.layout'
92 title : _this._strings['054176c3a541fb2d4b63e29360c749aa'] /* Members List */,
94 activate : function (_self)
96 _this.edit_btn.el.hide();
97 _this.delete_btn.el.hide();
98 _this.addToGroupBtn.el.hide();
99 _this.removeFromGroupBtn.el.hide();
100 _this.switch_btn.el.hide();
102 if(_this.member_grid) {
103 _this.member_grid.footer.onClick('first');
106 render : function (_self)
108 _this.member_panel = _self;
111 xns : Roo.bootstrap.panel,
112 '|xns' : 'Roo.bootstrap.panel',
114 xtype : 'NavSimplebar',
116 '|xns' : 'Roo.bootstrap',
120 style : 'width: 100%;',
122 '|xns' : 'Roo.bootstrap',
126 style : 'width: 100%;',
128 '|xns' : 'Roo.bootstrap',
132 style : 'width: 100%;',
134 '|xns' : 'Roo.bootstrap',
140 '|xns' : 'Roo.bootstrap',
146 '|xns' : 'Roo.bootstrap',
150 cls : 'roo-toolbar-button',
152 html : _this._strings['ec211f7c20af43e742bf2570c3cb84f9'] /* Add */,
155 click : function (_self, e)
157 Pman.Dialog.BAdminStaff.show({
159 company_id : Pman.Login.authUser.company_id
162 if(res.length_oath_key * 1 < 1){
163 _this.member_grid.footer.onClick('first');
167 Pman.Dialog.BAdminStaffTwoFactorQRCode.show({
172 _this.member_grid.footer.onClick('first');
179 '|xns' : 'Roo.bootstrap'
183 cls : 'roo-toolbar-button',
185 html : _this._strings['7dce122004969d56ae2e0245cb754d35'] /* Edit */,
188 click : function (_self, e)
190 var sel = _this.member_grid.getSelectionModel().getSelections();
193 Roo.bootstrap.MessageBox.alert('Error', 'Please select a person');
198 Roo.bootstrap.MessageBox.alert('Error', 'Please select a single person');
202 var s = _this.member_grid.getSelectionModel().getSelected();
204 if(s.data.id * 1 < 1){
205 Roo.bootstrap.MessageBox.alert('Error', 'Invalid person');
209 Pman.Dialog.BAdminStaff.show( { id : s.data.id }, function() {
210 _this.member_grid.footer.onClick('first');
214 render : function (_self)
216 _this.edit_btn = this;
218 this.el.setVisibilityMode(Roo.Element.DISPLAY);
224 '|xns' : 'Roo.bootstrap'
228 cls : 'roo-toolbar-button',
230 html : _this._strings['f2a6c498fb90ee345d997f888fce3b18'] /* Delete */,
233 click : function (_self, e)
236 Pman.genericDelete(_this.member_panel, 'core_person');
240 render : function (_self)
242 _this.delete_btn = this;
244 this.el.setVisibilityMode(Roo.Element.DISPLAY);
250 '|xns' : 'Roo.bootstrap'
254 cls : 'roo-toolbar-button',
256 html : _this._strings['05b763f7d24f32575493b3c23f299b0e'] /* Add To Group */,
259 click : function (_self, e)
261 var sel = _this.member_grid.getSelectionModel().getSelections();
264 Roo.bootstrap.MessageBox.alert('Error', 'Please select a person');
270 Roo.each(sel, function(r){
271 if(r.data.id * 1 < 1){
279 Roo.bootstrap.MessageBox.alert('Error', 'Please select a person');
283 Pman.Dialog.BAdminAddToGroup.show({
284 user_ids : ids.join(',')
287 _this.member_grid.footer.onClick('first');
291 render : function (_self)
293 _this.addToGroupBtn = this;
295 this.el.setVisibilityMode(Roo.Element.DISPLAY);
301 '|xns' : 'Roo.bootstrap'
305 cls : 'roo-toolbar-button',
307 html : _this._strings['e0a7cc944485bdedafb92b0cf98632fa'] /* Remove From Group */,
310 click : function (_self, e)
312 var sel = _this.member_grid.getSelectionModel().getSelections();
315 Roo.bootstrap.MessageBox.alert('Error', 'Please select a person');
321 Roo.each(sel, function(r){
322 if(r.data.id * 1 < 1){
330 Roo.bootstrap.MessageBox.alert('Error', 'Please select a person');
334 var group = _this.group_grid.getSelectionModel().getSelected();
336 if(!group || group.data.id < 1){
337 Roo.bootstrap.MessageBox.alert('Error', 'Please select a group');
342 url: baseURL + '/Roo/Core_group',
345 group_id : group.data.id,
347 user_ids : ids.join(',')
349 success: function(res){
350 _this.member_grid.footer.onClick('first');
357 render : function (_self)
359 _this.removeFromGroupBtn = this;
361 this.el.setVisibilityMode(Roo.Element.DISPLAY);
367 '|xns' : 'Roo.bootstrap'
371 cls : 'roo-toolbar-button',
373 html : _this._strings['ec3249f16ee5880d4c1acb752e5c925f'] /* Switch to Selected User */,
376 click : function (_self, e)
378 var s = _this.member_grid.getSelectionModel().getSelections();
381 Roo.MessageBox.alert("Error", "Select a Person");
386 url : baseURL+ '/Login.php',
388 'switch' : s[0].data.id
391 success : function() {
392 document.location = baseURL + '?ts=' + Math.random();
395 failure : function(d) {
397 Roo.MessageBox.alert("Error", d);
401 render : function (_self)
403 _this.switch_btn = this;
405 this.el.setVisibilityMode(Roo.Element.DISPLAY);
411 '|xns' : 'Roo.bootstrap'
420 '|xns' : 'Roo.bootstrap',
424 cls : 'roo-toolbar-button',
425 html : _this._strings['5bc3fd20294c17c9803942958fd7f26d'] /* Show Inactive */,
426 name : 'activeButton',
427 _offtext : _this._strings['5bc3fd20294c17c9803942958fd7f26d'] /* Show Inactive */,
428 _ontext : _this._strings['b15aafc19dc2ba4b788adf77268d8ca4'] /* Hide Inactive */,
432 render : function (_self)
434 _this.footerActiveBtn = this;
436 toggle : function (_self, e, pressed)
438 this.setText(this.pressed ? this._ontext : this._offtext);
440 _this.member_grid.footer.onClick('first');
447 '|xns' : 'Roo.bootstrap'
463 auto_hide_footer : true,
464 cellSelection : true,
472 cellclick : function (_self, el, rowIndex, columnIndex, e)
474 var di = _this.member_grid.colModel.getDataIndex(columnIndex);
476 if (di != 'active') {
480 var rec = _this.member_grid.store.getAt(rowIndex);
482 rec.set('active', rec.data.active ? 0 : 1);
486 // get the row number to make class x-row-0, x-row-1
488 if(rec.data.active * 1 != 1){
489 var el = _this.member_grid.getRowDom(rowIndex);
491 el.addClass('x-grid-row-fadeout');
493 el.on('transitionend',function(){
494 _this.member_grid.ds.remove(rec);
496 },this,{single:true});
499 render : function (_self)
501 _this.member_grid = _self;
504 rowdblclick : function (_self, el, rowIndex, e)
506 var s = _this.member_grid.store.getAt(rowIndex);
508 if(s.data.id * 1 < 1){
512 Pman.Dialog.BAdminStaff.show( { id : s.data.id }, function() {
513 _this.member_grid.footer.onClick('first');
518 '|xns' : 'Roo.bootstrap',
520 xtype : 'PagingToolbar',
525 '|xns' : 'Roo.bootstrap'
530 sortInfo : { field: 'name', direction: 'ASC' },
532 beforeload : function (_self, options)
534 if (!Pman.buildCompleted) {
537 options.params = options.params || {};
539 //options.params['query[type]'] = 0;
540 //options.params.active = 1;
542 if(!_this.group_grid){
547 var group = _this.group_grid.getSelectionModel().getSelected();
554 if(_this.footerActiveBtn && !_this.footerActiveBtn.pressed){
555 options.params.active = 1;
558 options.params['query[in_group]'] = group.data.id;
561 load : function (_self, records, options)
563 _this.edit_btn.el.hide();
564 _this.delete_btn.el.hide();
565 _this.addToGroupBtn.el.hide();
566 _this.removeFromGroupBtn.el.hide();
567 _this.switch_btn.el.hide();
569 options.params.active = 1;
574 update : function (_self, record, operation)
576 if (operation != 'commit') {
579 // only used to change active status.
582 url : baseURL + '/Roo/core_person',
586 active: record.data.active
589 success : function() {
595 /*Roo.bootstrap.MessageBox.alert("Error", "saving failed", function() {
596 _this.grid.footer.onClick('first');
607 url : baseURL + '/Roo/core_person',
612 xtype : 'JsonReader',
615 totalProperty : 'total',
621 xtype : 'RowSelectionModel',
623 selectionchange : function (_self)
625 _this.edit_btn.el.hide();
626 _this.delete_btn.el.hide();
627 _this.addToGroupBtn.el.hide();
628 _this.removeFromGroupBtn.el.hide();
629 _this.switch_btn.el.hide();
631 if(!_this.member_grid.getSelectionModel().getSelections().length){
635 _this.edit_btn.el.show();
636 _this.delete_btn.el.show();
637 _this.switch_btn.el.show();
639 var group = _this.group_grid.getSelectionModel().getSelected();
641 if(!group || group.data.id < 1){
642 _this.addToGroupBtn.el.show();
646 _this.removeFromGroupBtn.el.show();
650 xns : Roo.bootstrap.Table,
651 '|xns' : 'Roo.bootstrap.Table'
655 xtype : 'ColumnModel',
658 dataIndex : 'active',
659 header : _this._strings['4d3d769b812b6faa6b76e1a8abaece2d'] /* Active */,
661 renderer : function(v) {
663 var state = v > 0 ? 'check-' : '';
664 var cls = v > 0 ? 'text-primary' : '';
666 return '<i class=\"far fa-'+ state + 'square-o ' + cls + '\" aria-hidden=\"true\"></i>';
676 xtype : 'ColumnModel',
679 header : _this._strings['49ee3087348e8d44e1feda1917443987'] /* Name */,
681 renderer : function(v,x,r) {
682 if(r.data.active * 1 != 1){
683 return "<span class='cell-strikethrough'>"+String.format('{0}', v)+"</span>";
685 return String.format('{0}', v);
694 xtype : 'ColumnModel',
697 header : _this._strings['8a25a3ae30ab6e8ceb5b8c4009a3336f'] /* Role / Position */,
699 renderer : function(v) { return String.format('{0}', v); },
707 xtype : 'ColumnModel',
710 header : _this._strings['bcc254b55c4a1babdf1dcb82c207506b'] /* Phone */,
712 renderer : function(v) { return String.format('{0}', v); },
719 xtype : 'ColumnModel',
722 header : _this._strings['ce8ae9da5b7cd6c3df2929543a9af92d'] /* Email */,
724 renderer : function (v,x,r) {
725 if(r.data.active * 1 != 1){
726 return (v.length && v.indexOf('@') > 0 ) ?
727 String.format('<a href="mailto:{0}" class="cell-strikethrough">{0}</a>',v) : v;
729 return (v.length && v.indexOf('@') > 0 ) ?
730 String.format('<a href="mailto:{0}">{0}</a>',v) : v;
749 title : _this._strings['25f57527ae8a27c94fb5230b5486c743'] /* Permission List */,
751 activate : function (_self)
753 if(_this.permission_grid) {
754 _this.permission_grid.store.load({});
757 render : function (_self)
759 _this.permission_panel = this;
762 xns : Roo.bootstrap.panel,
763 '|xns' : 'Roo.bootstrap.panel',
766 cellSelection : true,
775 cellclick : function (_self, el, rowIndex, columnIndex, e)
777 var di = _this.permission_grid.colModel.getDataIndex(columnIndex);
779 var r = _this.permission_grid.store.getAt(rowIndex);
781 if(di == 'rightname' || di == 'descript' || r.data.id * 1 < 1) {
787 var accessmask = r.data.accessmask.split('').sort().join('');
788 var fullmask = r.data.FullMask.split('').sort().join('');
790 r.set('accessmask', (accessmask == fullmask) ? '' : r.data.FullMask);
805 var target = mapping[di];
807 if(r.data.FullMask.indexOf(target) === -1){
811 var accessmask = r.data.accessmask.split('');
813 if(accessmask.indexOf(target) !== -1){
814 accessmask.splice(accessmask.indexOf(target), 1);
816 accessmask.push(target);
819 r.set('accessmask', accessmask.sort().join(''));
824 render : function (_self)
826 _this.permission_grid = this;
828 if(_this.permission_panel.active) {
830 _this.permission_grid.store.load({});
836 '|xns' : 'Roo.bootstrap',
840 sortInfo : { field: 'rightname', direction: 'ASC' },
842 beforeload : function (_self, o)
844 if (!Pman.buildCompleted) {
847 var group = _this.group_grid.getSelectionModel().getSelected();
850 _this.permission_panel.el.mask('Please select a group');
855 if(group.data.id * 1 < 1){
856 _this.permission_panel.el.mask('Please select a group on the left');
861 _this.permission_panel.el.unmask();
863 o.params = o.params || {};
866 o.params.group_id = group.data.id;
869 update : function (_self, record, operation)
871 if (operation != 'commit') {
875 var group = _this.group_grid.getSelectionModel().getSelected();
877 if(!group || group.data.id * 1 < 1){
883 params.group_id = group.data.id;
885 params['dataUpdate[' + record.data.id + ']'] = record.data.accessmask;
888 url : baseURL + '/Admin/GroupRights',
891 success : function() {
896 Roo.bootstrap.MessageBox.alert("Error", "saving failed", function() {
897 _this.permission_grid.store.load({});
909 url : baseURL + '/BAdmin/GroupRights.php',
914 xtype : 'JsonReader',
929 'name': 'accessmask',
943 totalProperty : 'total',
949 xtype : 'RowSelectionModel',
951 xns : Roo.bootstrap.Table,
952 '|xns' : 'Roo.bootstrap.Table'
956 xtype : 'ColumnModel',
959 header : _this._strings['17050e1914aff1e423a84e76db8ab0d1'] /* [All] */,
960 renderer : function (v,x,r) {
962 if (!r.data.FullMask.length) {
966 var accessmask = r.data.accessmask.split('').sort().join('');
967 var fullmask = r.data.FullMask.split('').sort().join('');
969 var state = (accessmask == fullmask) ? 'check-' : '';
971 var cls = (accessmask == fullmask) ? 'text-primary' : '';
973 return '<i class=\"far fa-'+ state + 'square-o ' + cls + '\" aria-hidden=\"true\"></i>';
982 xtype : 'ColumnModel',
983 dataIndex : 'rightname',
984 header : _this._strings['e55f75a29310d7b60f7ac1d390c8ae42'] /* Module */,
985 hidden : appDisabled.indexOf('Core.SuperAdmin') > 0 ? 1 : 0,
986 renderer : function (v) {
987 return String.format('<span tooltip="{1}">{0}</span>', v.split('.').shift(), v);
989 xs : appDisabled.indexOf('Core.SuperAdmin') > 0 ? 0 : 2,
994 xtype : 'ColumnModel',
995 dataIndex : 'descript',
996 header : _this._strings['b5a7adde1af5c87d7fd797b6245c2a39'] /* Description */,
997 renderer : function (v) {
998 return String.format('{0}', v ? v : '');
1000 xs : appDisabled.indexOf('Core.SuperAdmin') > 0 ? 6 : 4,
1005 xtype : 'ColumnModel',
1008 header : _this._strings['ec211f7c20af43e742bf2570c3cb84f9'] /* Add */,
1009 renderer : function (v,x,r) {
1011 if (r.data.FullMask.indexOf('A') === -1) {
1015 var state = (r.data.accessmask.indexOf('A') !== -1) ? 'check-' : '';
1016 var cls = (r.data.accessmask.indexOf('A') !== -1) ? 'text-primary' : '';
1018 return '<i class=\"far fa-'+ state + 'square-o ' + cls + '\" aria-hidden=\"true\"></i>';
1026 xtype : 'ColumnModel',
1029 header : _this._strings['7dce122004969d56ae2e0245cb754d35'] /* Edit */,
1030 renderer : function (v,x,r) {
1032 if (r.data.FullMask.indexOf('E') === -1) {
1036 var state = (r.data.accessmask.indexOf('E') !== -1) ? 'check-' : '';
1037 var cls = (r.data.accessmask.indexOf('E') !== -1) ? 'text-primary' : '';
1039 return '<i class=\"far fa-'+ state + 'square-o ' + cls + '\" aria-hidden=\"true\"></i>';
1047 xtype : 'ColumnModel',
1049 dataIndex : 'delete',
1050 header : _this._strings['f2a6c498fb90ee345d997f888fce3b18'] /* Delete */,
1051 renderer : function (v,x,r) {
1053 if (r.data.FullMask.indexOf('D') === -1) {
1057 var state = (r.data.accessmask.indexOf('D') !== -1) ? 'check-' : '';
1058 var cls = (r.data.accessmask.indexOf('D') !== -1) ? 'text-primary' : '';
1060 return '<i class=\"far fa-'+ state + 'square-o ' + cls + '\" aria-hidden=\"true\"></i>';
1069 xtype : 'ColumnModel',
1072 header : _this._strings['f29c99f082755399839b64ebaf9f608a'] /* List / View */,
1073 renderer : function (v,x,r) {
1075 if (r.data.FullMask.indexOf('S') === -1) {
1079 var state = (r.data.accessmask.indexOf('S') !== -1) ? 'check-' : '';
1080 var cls = (r.data.accessmask.indexOf('S') !== -1) ? 'text-primary' : '';
1082 return '<i class=\"far fa-'+ state + 'square-o ' + cls + '\" aria-hidden=\"true\"></i>';
1091 xtype : 'ColumnModel',
1093 dataIndex : 'print',
1094 header : _this._strings['4f3cdff2e6a5e08440be182ef40d93f7'] /* Print / Export */,
1095 renderer : function (v,x,r) {
1097 if (r.data.FullMask.indexOf('P') === -1) {
1101 var state = (r.data.accessmask.indexOf('P') !== -1) ? 'check-' : '';
1102 var cls = (r.data.accessmask.indexOf('P') !== -1) ? 'text-primary' : '';
1104 return '<i class=\"far fa-'+ state + 'square-o ' + cls + '\" aria-hidden=\"true\"></i>';
1118 fitContainer : true,
1121 title : _this._strings['a37ede293936e29279ed543129451ec3'] /* Groups */,
1123 activate : function (_self)
1125 if (_this.group_grid) {
1126 _this.group_grid.store.load({});
1129 render : function (_self)
1131 _this.group_panel = _self;
1134 xns : Roo.bootstrap.panel,
1135 '|xns' : 'Roo.bootstrap.panel',
1137 xtype : 'NavSimplebar',
1138 xns : Roo.bootstrap,
1139 '|xns' : 'Roo.bootstrap',
1143 xns : Roo.bootstrap,
1144 '|xns' : 'Roo.bootstrap',
1148 cls : 'account-management-group-nav-item',
1149 xns : Roo.bootstrap,
1150 '|xns' : 'Roo.bootstrap',
1154 html : _this._strings['aba9f7d7443652e858969bfc280690b1'] /* Manage Groups */,
1155 xns : Roo.bootstrap,
1156 '|xns' : 'Roo.bootstrap',
1159 xns : Roo.bootstrap,
1160 '|xns' : 'Roo.bootstrap',
1165 html : _this._strings['ec211f7c20af43e742bf2570c3cb84f9'] /* Add */,
1166 isContainer : false,
1167 preventDefault : true,
1169 click : function (_self, e)
1171 Pman.Dialog.BAdminGroups.show({ id : 0 }, function(res){
1172 _this.group_grid.store.load({});
1176 xns : Roo.bootstrap,
1177 '|xns' : 'Roo.bootstrap'
1181 fa : 'fa fa-pencil',
1182 html : _this._strings['7dce122004969d56ae2e0245cb754d35'] /* Edit */,
1183 isContainer : false,
1184 preventDefault : true,
1186 click : function (_self, e)
1188 var sel = _this.group_grid.getSelectionModel().getSelected();
1191 Roo.bootstrap.MessageBox.alert('Error', 'Please select a group');
1195 if(sel.data.id * 1 < 1){
1196 Roo.bootstrap.MessageBox.alert('Error', 'The selected group is not editable');
1200 Pman.Dialog.BAdminGroups.show({ id : sel.data.id }, function(res){
1201 _this.group_grid.store.load({});
1205 xns : Roo.bootstrap,
1206 '|xns' : 'Roo.bootstrap'
1211 html : _this._strings['f2a6c498fb90ee345d997f888fce3b18'] /* Delete */,
1212 isContainer : false,
1213 preventDefault : true,
1215 click : function (_self, e)
1217 var sel = _this.group_grid.getSelectionModel().getSelected();
1220 Roo.bootstrap.MessageBox.alert('Error', 'Please select a group');
1224 if(sel.data.id * 1 < 1){
1225 Roo.bootstrap.MessageBox.alert('Error', 'The selected group is not editable');
1229 var deleteIt = function()
1232 url: baseURL + '/Roo/Core_group',
1235 _delete : sel.data.id
1237 success: function(res){
1238 _this.group_grid.store.load({});
1244 Roo.bootstrap.MessageBox.confirm('Confirm', 'Are you sure to delete the group?',function(ret) {
1257 xns : Roo.bootstrap,
1258 '|xns' : 'Roo.bootstrap'
1262 fa : 'fa fa-refresh',
1263 html : _this._strings['4d1c8263ba1036754f8db14a98f9f006'] /* Reload */,
1264 isContainer : false,
1265 preventDefault : true,
1267 click : function (_self, e)
1269 _this.group_grid.store.load({});
1272 xns : Roo.bootstrap,
1273 '|xns' : 'Roo.bootstrap'
1286 cls : 'table-fixed',
1291 rowSelection : true,
1294 render : function (_self)
1296 _this.group_grid = _self;
1298 if (_this.group_panel.active) {
1299 _this.group_grid.store.load({});
1302 rowdblclick : function (_self, el, rowIndex, e)
1304 var sel = _this.group_grid.store.getAt(rowIndex);
1306 if(!sel || sel.data.id * 1 < 1){
1310 Pman.Dialog.BAdminGroups.show({ id : sel.data.id }, function(res){
1311 _this.group_grid.store.load({});
1314 rowsrendered : function (_self)
1316 if(this.ds.getCount() * 1 < 1){
1320 var sm = _this.group_grid.getSelectionModel();
1322 sm.selectFirstRow();
1323 sm.fireEvent('afterselectionchange', sm);
1327 xns : Roo.bootstrap,
1328 '|xns' : 'Roo.bootstrap',
1332 sortInfo : { field: 'name', direction: 'ASC'},
1334 beforeload : function (_self, options)
1336 if (!Pman.buildCompleted) {
1339 options.params = options.params || {};
1341 options.params.type = 0;
1343 options.params._add_everyone = 1;
1348 '|xns' : 'Roo.data',
1350 xtype : 'HttpProxy',
1352 url : baseURL + '/Roo/core_group',
1357 xtype : 'JsonReader',
1368 'name': 'group_member_count',
1372 'name': 'display_name',
1382 totalProperty : 'total',
1388 xtype : 'RowSelectionModel',
1389 singleSelect : true,
1391 afterselectionchange : function (_self)
1393 if(_this.footerActiveBtn){
1394 _this.footerActiveBtn.setActive(false);
1395 _this.footerActiveBtn.fireEvent('toggle', _this.footerActiveBtn);
1398 if(_this.permission_grid){
1399 _this.permission_grid.store.load({});
1404 xns : Roo.bootstrap.Table,
1405 '|xns' : 'Roo.bootstrap.Table'
1409 xtype : 'ColumnModel',
1412 header : _this._strings['49ee3087348e8d44e1feda1917443987'] /* Name */,
1414 renderer : function(v,x,r) {
1416 if (r.data.id == 0) {
1417 return '<b>' + "All Staff" + '</b>';
1420 if (r.data.id == -1) {
1421 return '<b>' + "Not in a Group" + '</b>';
1424 var vv = (r.json.display_name.length) ? r.json.display_name : v;
1426 if (v == 'Administrators') {
1427 return '<b>' + vv + '</b>';
1430 if (r.data.leader) {
1431 return vv + ' (' + r.json.leader_name + ')';
1434 return String.format('{0} ({1})',vv, r.json.group_member_count);