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({
170 _this.member_grid.footer.onClick('first');
177 '|xns' : 'Roo.bootstrap'
181 cls : 'roo-toolbar-button',
183 html : _this._strings['7dce122004969d56ae2e0245cb754d35'] /* Edit */,
186 click : function (_self, e)
188 var sel = _this.member_grid.getSelectionModel().getSelections();
191 Roo.bootstrap.MessageBox.alert('Error', 'Please select a person');
196 Roo.bootstrap.MessageBox.alert('Error', 'Please select a single person');
200 var s = _this.member_grid.getSelectionModel().getSelected();
202 if(s.data.id * 1 < 1){
203 Roo.bootstrap.MessageBox.alert('Error', 'Invalid person');
207 Pman.Dialog.BAdminStaff.show( { id : s.data.id }, function() {
208 _this.member_grid.footer.onClick('first');
212 render : function (_self)
214 _this.edit_btn = this;
216 this.el.setVisibilityMode(Roo.Element.DISPLAY);
222 '|xns' : 'Roo.bootstrap'
226 cls : 'roo-toolbar-button',
228 html : _this._strings['f2a6c498fb90ee345d997f888fce3b18'] /* Delete */,
231 click : function (_self, e)
234 Pman.genericDelete(_this.member_panel, 'core_person');
238 render : function (_self)
240 _this.delete_btn = this;
242 this.el.setVisibilityMode(Roo.Element.DISPLAY);
248 '|xns' : 'Roo.bootstrap'
252 cls : 'roo-toolbar-button',
254 html : _this._strings['05b763f7d24f32575493b3c23f299b0e'] /* Add To Group */,
257 click : function (_self, e)
259 var sel = _this.member_grid.getSelectionModel().getSelections();
262 Roo.bootstrap.MessageBox.alert('Error', 'Please select a person');
268 Roo.each(sel, function(r){
269 if(r.data.id * 1 < 1){
277 Roo.bootstrap.MessageBox.alert('Error', 'Please select a person');
281 Pman.Dialog.BAdminAddToGroup.show({
282 user_ids : ids.join(',')
285 _this.member_grid.footer.onClick('first');
289 render : function (_self)
291 _this.addToGroupBtn = this;
293 this.el.setVisibilityMode(Roo.Element.DISPLAY);
299 '|xns' : 'Roo.bootstrap'
303 cls : 'roo-toolbar-button',
305 html : _this._strings['e0a7cc944485bdedafb92b0cf98632fa'] /* Remove From Group */,
308 click : function (_self, e)
310 var sel = _this.member_grid.getSelectionModel().getSelections();
313 Roo.bootstrap.MessageBox.alert('Error', 'Please select a person');
319 Roo.each(sel, function(r){
320 if(r.data.id * 1 < 1){
328 Roo.bootstrap.MessageBox.alert('Error', 'Please select a person');
332 var group = _this.group_grid.getSelectionModel().getSelected();
334 if(!group || group.data.id < 1){
335 Roo.bootstrap.MessageBox.alert('Error', 'Please select a group');
340 url: baseURL + '/Roo/Core_group',
343 group_id : group.data.id,
345 user_ids : ids.join(',')
347 success: function(res){
348 _this.member_grid.footer.onClick('first');
355 render : function (_self)
357 _this.removeFromGroupBtn = this;
359 this.el.setVisibilityMode(Roo.Element.DISPLAY);
365 '|xns' : 'Roo.bootstrap'
369 cls : 'roo-toolbar-button',
371 html : _this._strings['ec3249f16ee5880d4c1acb752e5c925f'] /* Switch to Selected User */,
374 click : function (_self, e)
376 var s = _this.member_grid.getSelectionModel().getSelections();
379 Roo.MessageBox.alert("Error", "Select a Person");
384 url : baseURL+ '/Login.php',
386 'switch' : s[0].data.id
389 success : function() {
390 document.location = baseURL + '?ts=' + Math.random();
393 failure : function(d) {
395 Roo.MessageBox.alert("Error", d);
399 render : function (_self)
401 _this.switch_btn = this;
403 this.el.setVisibilityMode(Roo.Element.DISPLAY);
409 '|xns' : 'Roo.bootstrap'
418 '|xns' : 'Roo.bootstrap',
422 cls : 'roo-toolbar-button',
423 html : _this._strings['5bc3fd20294c17c9803942958fd7f26d'] /* Show Inactive */,
424 name : 'activeButton',
425 _offtext : _this._strings['5bc3fd20294c17c9803942958fd7f26d'] /* Show Inactive */,
426 _ontext : _this._strings['b15aafc19dc2ba4b788adf77268d8ca4'] /* Hide Inactive */,
430 render : function (_self)
432 _this.footerActiveBtn = this;
434 toggle : function (_self, e, pressed)
436 this.setText(this.pressed ? this._ontext : this._offtext);
438 _this.member_grid.footer.onClick('first');
445 '|xns' : 'Roo.bootstrap'
461 auto_hide_footer : true,
462 cellSelection : true,
470 cellclick : function (_self, el, rowIndex, columnIndex, e)
472 var di = _this.member_grid.colModel.getDataIndex(columnIndex);
474 if (di != 'active') {
478 var rec = _this.member_grid.store.getAt(rowIndex);
480 rec.set('active', rec.data.active ? 0 : 1);
484 // get the row number to make class x-row-0, x-row-1
486 if(rec.data.active * 1 != 1){
487 var el = _this.member_grid.getRowDom(rowIndex);
489 el.addClass('x-grid-row-fadeout');
491 el.on('transitionend',function(){
492 _this.member_grid.ds.remove(rec);
494 },this,{single:true});
497 render : function (_self)
499 _this.member_grid = _self;
502 rowdblclick : function (_self, el, rowIndex, e)
504 var s = _this.member_grid.store.getAt(rowIndex);
506 if(s.data.id * 1 < 1){
510 Pman.Dialog.BAdminStaff.show( { id : s.data.id }, function() {
511 _this.member_grid.footer.onClick('first');
516 '|xns' : 'Roo.bootstrap',
518 xtype : 'PagingToolbar',
523 '|xns' : 'Roo.bootstrap'
528 sortInfo : { field: 'name', direction: 'ASC' },
530 beforeload : function (_self, options)
532 if (!Pman.buildCompleted) {
535 options.params = options.params || {};
537 //options.params['query[type]'] = 0;
538 //options.params.active = 1;
540 if(!_this.group_grid){
545 var group = _this.group_grid.getSelectionModel().getSelected();
552 if(_this.footerActiveBtn && !_this.footerActiveBtn.pressed){
553 options.params.active = 1;
556 options.params['query[in_group]'] = group.data.id;
559 load : function (_self, records, options)
561 _this.edit_btn.el.hide();
562 _this.delete_btn.el.hide();
563 _this.addToGroupBtn.el.hide();
564 _this.removeFromGroupBtn.el.hide();
565 _this.switch_btn.el.hide();
567 options.params.active = 1;
572 update : function (_self, record, operation)
574 if (operation != 'commit') {
577 // only used to change active status.
580 url : baseURL + '/Roo/core_person',
584 active: record.data.active
587 success : function() {
593 /*Roo.bootstrap.MessageBox.alert("Error", "saving failed", function() {
594 _this.grid.footer.onClick('first');
605 url : baseURL + '/Roo/core_person',
610 xtype : 'JsonReader',
613 totalProperty : 'total',
619 xtype : 'RowSelectionModel',
621 selectionchange : function (_self)
623 _this.edit_btn.el.hide();
624 _this.delete_btn.el.hide();
625 _this.addToGroupBtn.el.hide();
626 _this.removeFromGroupBtn.el.hide();
627 _this.switch_btn.el.hide();
629 if(!_this.member_grid.getSelectionModel().getSelections().length){
633 _this.edit_btn.el.show();
634 _this.delete_btn.el.show();
635 _this.switch_btn.el.show();
637 var group = _this.group_grid.getSelectionModel().getSelected();
639 if(!group || group.data.id < 1){
640 _this.addToGroupBtn.el.show();
644 _this.removeFromGroupBtn.el.show();
648 xns : Roo.bootstrap.Table,
649 '|xns' : 'Roo.bootstrap.Table'
653 xtype : 'ColumnModel',
656 dataIndex : 'active',
657 header : _this._strings['4d3d769b812b6faa6b76e1a8abaece2d'] /* Active */,
659 renderer : function(v) {
661 var state = v > 0 ? 'check-' : '';
662 var cls = v > 0 ? 'text-primary' : '';
664 return '<i class=\"far fa-'+ state + 'square-o ' + cls + '\" aria-hidden=\"true\"></i>';
674 xtype : 'ColumnModel',
677 header : _this._strings['49ee3087348e8d44e1feda1917443987'] /* Name */,
679 renderer : function(v,x,r) {
680 if(r.data.active * 1 != 1){
681 return "<span class='cell-strikethrough'>"+String.format('{0}', v)+"</span>";
683 return String.format('{0}', v);
692 xtype : 'ColumnModel',
695 header : _this._strings['8a25a3ae30ab6e8ceb5b8c4009a3336f'] /* Role / Position */,
697 renderer : function(v) { return String.format('{0}', v); },
705 xtype : 'ColumnModel',
708 header : _this._strings['bcc254b55c4a1babdf1dcb82c207506b'] /* Phone */,
710 renderer : function(v) { return String.format('{0}', v); },
717 xtype : 'ColumnModel',
720 header : _this._strings['ce8ae9da5b7cd6c3df2929543a9af92d'] /* Email */,
722 renderer : function (v,x,r) {
723 if(r.data.active * 1 != 1){
724 return (v.length && v.indexOf('@') > 0 ) ?
725 String.format('<a href="mailto:{0}" class="cell-strikethrough">{0}</a>',v) : v;
727 return (v.length && v.indexOf('@') > 0 ) ?
728 String.format('<a href="mailto:{0}">{0}</a>',v) : v;
747 title : _this._strings['25f57527ae8a27c94fb5230b5486c743'] /* Permission List */,
749 activate : function (_self)
751 if(_this.permission_grid) {
752 _this.permission_grid.store.load({});
755 render : function (_self)
757 _this.permission_panel = this;
760 xns : Roo.bootstrap.panel,
761 '|xns' : 'Roo.bootstrap.panel',
764 cellSelection : true,
773 cellclick : function (_self, el, rowIndex, columnIndex, e)
775 var di = _this.permission_grid.colModel.getDataIndex(columnIndex);
777 var r = _this.permission_grid.store.getAt(rowIndex);
779 if(di == 'rightname' || di == 'descript' || r.data.id * 1 < 1) {
785 var accessmask = r.data.accessmask.split('').sort().join('');
786 var fullmask = r.data.FullMask.split('').sort().join('');
788 r.set('accessmask', (accessmask == fullmask) ? '' : r.data.FullMask);
803 var target = mapping[di];
805 if(r.data.FullMask.indexOf(target) === -1){
809 var accessmask = r.data.accessmask.split('');
811 if(accessmask.indexOf(target) !== -1){
812 accessmask.splice(accessmask.indexOf(target), 1);
814 accessmask.push(target);
817 r.set('accessmask', accessmask.sort().join(''));
822 render : function (_self)
824 _this.permission_grid = this;
826 if(_this.permission_panel.active) {
828 _this.permission_grid.store.load({});
834 '|xns' : 'Roo.bootstrap',
838 sortInfo : { field: 'rightname', direction: 'ASC' },
840 beforeload : function (_self, o)
842 if (!Pman.buildCompleted) {
845 var group = _this.group_grid.getSelectionModel().getSelected();
848 _this.permission_panel.el.mask('Please select a group');
853 if(group.data.id * 1 < 1){
854 _this.permission_panel.el.mask('Please select a group on the left');
859 _this.permission_panel.el.unmask();
861 o.params = o.params || {};
864 o.params.group_id = group.data.id;
867 update : function (_self, record, operation)
869 if (operation != 'commit') {
873 var group = _this.group_grid.getSelectionModel().getSelected();
875 if(!group || group.data.id * 1 < 1){
881 params.group_id = group.data.id;
883 params['dataUpdate[' + record.data.id + ']'] = record.data.accessmask;
886 url : baseURL + '/Admin/GroupRights',
889 success : function() {
894 Roo.bootstrap.MessageBox.alert("Error", "saving failed", function() {
895 _this.permission_grid.store.load({});
907 url : baseURL + '/BAdmin/GroupRights.php',
912 xtype : 'JsonReader',
927 'name': 'accessmask',
941 totalProperty : 'total',
947 xtype : 'RowSelectionModel',
949 xns : Roo.bootstrap.Table,
950 '|xns' : 'Roo.bootstrap.Table'
954 xtype : 'ColumnModel',
957 header : _this._strings['17050e1914aff1e423a84e76db8ab0d1'] /* [All] */,
958 renderer : function (v,x,r) {
960 if (!r.data.FullMask.length) {
964 var accessmask = r.data.accessmask.split('').sort().join('');
965 var fullmask = r.data.FullMask.split('').sort().join('');
967 var state = (accessmask == fullmask) ? 'check-' : '';
969 var cls = (accessmask == fullmask) ? 'text-primary' : '';
971 return '<i class=\"far fa-'+ state + 'square-o ' + cls + '\" aria-hidden=\"true\"></i>';
980 xtype : 'ColumnModel',
981 dataIndex : 'rightname',
982 header : _this._strings['e55f75a29310d7b60f7ac1d390c8ae42'] /* Module */,
983 hidden : appDisabled.indexOf('Core.SuperAdmin') > 0 ? 1 : 0,
984 renderer : function (v) {
985 return String.format('<span tooltip="{1}">{0}</span>', v.split('.').shift(), v);
987 xs : appDisabled.indexOf('Core.SuperAdmin') > 0 ? 0 : 2,
992 xtype : 'ColumnModel',
993 dataIndex : 'descript',
994 header : _this._strings['b5a7adde1af5c87d7fd797b6245c2a39'] /* Description */,
995 renderer : function (v) {
996 return String.format('{0}', v ? v : '');
998 xs : appDisabled.indexOf('Core.SuperAdmin') > 0 ? 6 : 4,
1003 xtype : 'ColumnModel',
1006 header : _this._strings['ec211f7c20af43e742bf2570c3cb84f9'] /* Add */,
1007 renderer : function (v,x,r) {
1009 if (r.data.FullMask.indexOf('A') === -1) {
1013 var state = (r.data.accessmask.indexOf('A') !== -1) ? 'check-' : '';
1014 var cls = (r.data.accessmask.indexOf('A') !== -1) ? 'text-primary' : '';
1016 return '<i class=\"far fa-'+ state + 'square-o ' + cls + '\" aria-hidden=\"true\"></i>';
1024 xtype : 'ColumnModel',
1027 header : _this._strings['7dce122004969d56ae2e0245cb754d35'] /* Edit */,
1028 renderer : function (v,x,r) {
1030 if (r.data.FullMask.indexOf('E') === -1) {
1034 var state = (r.data.accessmask.indexOf('E') !== -1) ? 'check-' : '';
1035 var cls = (r.data.accessmask.indexOf('E') !== -1) ? 'text-primary' : '';
1037 return '<i class=\"far fa-'+ state + 'square-o ' + cls + '\" aria-hidden=\"true\"></i>';
1045 xtype : 'ColumnModel',
1047 dataIndex : 'delete',
1048 header : _this._strings['f2a6c498fb90ee345d997f888fce3b18'] /* Delete */,
1049 renderer : function (v,x,r) {
1051 if (r.data.FullMask.indexOf('D') === -1) {
1055 var state = (r.data.accessmask.indexOf('D') !== -1) ? 'check-' : '';
1056 var cls = (r.data.accessmask.indexOf('D') !== -1) ? 'text-primary' : '';
1058 return '<i class=\"far fa-'+ state + 'square-o ' + cls + '\" aria-hidden=\"true\"></i>';
1067 xtype : 'ColumnModel',
1070 header : _this._strings['f29c99f082755399839b64ebaf9f608a'] /* List / View */,
1071 renderer : function (v,x,r) {
1073 if (r.data.FullMask.indexOf('S') === -1) {
1077 var state = (r.data.accessmask.indexOf('S') !== -1) ? 'check-' : '';
1078 var cls = (r.data.accessmask.indexOf('S') !== -1) ? 'text-primary' : '';
1080 return '<i class=\"far fa-'+ state + 'square-o ' + cls + '\" aria-hidden=\"true\"></i>';
1089 xtype : 'ColumnModel',
1091 dataIndex : 'print',
1092 header : _this._strings['4f3cdff2e6a5e08440be182ef40d93f7'] /* Print / Export */,
1093 renderer : function (v,x,r) {
1095 if (r.data.FullMask.indexOf('P') === -1) {
1099 var state = (r.data.accessmask.indexOf('P') !== -1) ? 'check-' : '';
1100 var cls = (r.data.accessmask.indexOf('P') !== -1) ? 'text-primary' : '';
1102 return '<i class=\"far fa-'+ state + 'square-o ' + cls + '\" aria-hidden=\"true\"></i>';
1116 fitContainer : true,
1119 title : _this._strings['a37ede293936e29279ed543129451ec3'] /* Groups */,
1121 activate : function (_self)
1123 if (_this.group_grid) {
1124 _this.group_grid.store.load({});
1127 render : function (_self)
1129 _this.group_panel = _self;
1132 xns : Roo.bootstrap.panel,
1133 '|xns' : 'Roo.bootstrap.panel',
1135 xtype : 'NavSimplebar',
1136 xns : Roo.bootstrap,
1137 '|xns' : 'Roo.bootstrap',
1141 xns : Roo.bootstrap,
1142 '|xns' : 'Roo.bootstrap',
1146 cls : 'account-management-group-nav-item',
1147 xns : Roo.bootstrap,
1148 '|xns' : 'Roo.bootstrap',
1152 html : _this._strings['aba9f7d7443652e858969bfc280690b1'] /* Manage Groups */,
1153 xns : Roo.bootstrap,
1154 '|xns' : 'Roo.bootstrap',
1157 xns : Roo.bootstrap,
1158 '|xns' : 'Roo.bootstrap',
1163 html : _this._strings['ec211f7c20af43e742bf2570c3cb84f9'] /* Add */,
1164 isContainer : false,
1165 preventDefault : true,
1167 click : function (_self, e)
1169 Pman.Dialog.BAdminGroups.show({ id : 0 }, function(res){
1170 _this.group_grid.store.load({});
1174 xns : Roo.bootstrap,
1175 '|xns' : 'Roo.bootstrap'
1179 fa : 'fa fa-pencil',
1180 html : _this._strings['7dce122004969d56ae2e0245cb754d35'] /* Edit */,
1181 isContainer : false,
1182 preventDefault : true,
1184 click : function (_self, e)
1186 var sel = _this.group_grid.getSelectionModel().getSelected();
1189 Roo.bootstrap.MessageBox.alert('Error', 'Please select a group');
1193 if(sel.data.id * 1 < 1){
1194 Roo.bootstrap.MessageBox.alert('Error', 'The selected group is not editable');
1198 Pman.Dialog.BAdminGroups.show({ id : sel.data.id }, function(res){
1199 _this.group_grid.store.load({});
1203 xns : Roo.bootstrap,
1204 '|xns' : 'Roo.bootstrap'
1209 html : _this._strings['f2a6c498fb90ee345d997f888fce3b18'] /* Delete */,
1210 isContainer : false,
1211 preventDefault : true,
1213 click : function (_self, e)
1215 var sel = _this.group_grid.getSelectionModel().getSelected();
1218 Roo.bootstrap.MessageBox.alert('Error', 'Please select a group');
1222 if(sel.data.id * 1 < 1){
1223 Roo.bootstrap.MessageBox.alert('Error', 'The selected group is not editable');
1227 var deleteIt = function()
1230 url: baseURL + '/Roo/Core_group',
1233 _delete : sel.data.id
1235 success: function(res){
1236 _this.group_grid.store.load({});
1242 Roo.bootstrap.MessageBox.confirm('Confirm', 'Are you sure to delete the group?',function(ret) {
1255 xns : Roo.bootstrap,
1256 '|xns' : 'Roo.bootstrap'
1260 fa : 'fa fa-refresh',
1261 html : _this._strings['4d1c8263ba1036754f8db14a98f9f006'] /* Reload */,
1262 isContainer : false,
1263 preventDefault : true,
1265 click : function (_self, e)
1267 _this.group_grid.store.load({});
1270 xns : Roo.bootstrap,
1271 '|xns' : 'Roo.bootstrap'
1284 cls : 'table-fixed',
1289 rowSelection : true,
1292 render : function (_self)
1294 _this.group_grid = _self;
1296 if (_this.group_panel.active) {
1297 _this.group_grid.store.load({});
1300 rowdblclick : function (_self, el, rowIndex, e)
1302 var sel = _this.group_grid.store.getAt(rowIndex);
1304 if(!sel || sel.data.id * 1 < 1){
1308 Pman.Dialog.BAdminGroups.show({ id : sel.data.id }, function(res){
1309 _this.group_grid.store.load({});
1312 rowsrendered : function (_self)
1314 if(this.ds.getCount() * 1 < 1){
1318 var sm = _this.group_grid.getSelectionModel();
1320 sm.selectFirstRow();
1321 sm.fireEvent('afterselectionchange', sm);
1325 xns : Roo.bootstrap,
1326 '|xns' : 'Roo.bootstrap',
1330 sortInfo : { field: 'name', direction: 'ASC'},
1332 beforeload : function (_self, options)
1334 if (!Pman.buildCompleted) {
1337 options.params = options.params || {};
1339 options.params.type = 0;
1341 options.params._add_everyone = 1;
1346 '|xns' : 'Roo.data',
1348 xtype : 'HttpProxy',
1350 url : baseURL + '/Roo/core_group',
1355 xtype : 'JsonReader',
1366 'name': 'group_member_count',
1370 'name': 'display_name',
1380 totalProperty : 'total',
1386 xtype : 'RowSelectionModel',
1387 singleSelect : true,
1389 afterselectionchange : function (_self)
1391 if(_this.footerActiveBtn){
1392 _this.footerActiveBtn.setActive(false);
1393 _this.footerActiveBtn.fireEvent('toggle', _this.footerActiveBtn);
1396 if(_this.permission_grid){
1397 _this.permission_grid.store.load({});
1402 xns : Roo.bootstrap.Table,
1403 '|xns' : 'Roo.bootstrap.Table'
1407 xtype : 'ColumnModel',
1410 header : _this._strings['49ee3087348e8d44e1feda1917443987'] /* Name */,
1412 renderer : function(v,x,r) {
1414 if (r.data.id == 0) {
1415 return '<b>' + "All Staff" + '</b>';
1418 if (r.data.id == -1) {
1419 return '<b>' + "Not in a Group" + '</b>';
1422 var vv = (r.json.display_name.length) ? r.json.display_name : v;
1424 if (v == 'Administrators') {
1425 return '<b>' + vv + '</b>';
1428 if (r.data.leader) {
1429 return vv + ' (' + r.json.leader_name + ')';
1432 return String.format('{0} ({1})',vv, r.json.group_member_count);