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 'cdb6b6bab1fd18b9dbfe3fb84a5d34ae' :"<i class=\"fa fa-search\"></i>",
11 'ce8ae9da5b7cd6c3df2929543a9af92d' :"Email",
12 'b15aafc19dc2ba4b788adf77268d8ca4' :"Hide Inactive",
13 'f29c99f082755399839b64ebaf9f608a' :"List / View",
14 '4f3cdff2e6a5e08440be182ef40d93f7' :"Print / Export",
15 'ec211f7c20af43e742bf2570c3cb84f9' :"Add",
16 'a37ede293936e29279ed543129451ec3' :"Groups",
17 '7dce122004969d56ae2e0245cb754d35' :"Edit",
18 '05b763f7d24f32575493b3c23f299b0e' :"Add To Group",
19 '9bac86fd9f499d47cea5f2fd70d701c1' :"search for account",
20 'e0a7cc944485bdedafb92b0cf98632fa' :"Remove From Group",
21 '25f57527ae8a27c94fb5230b5486c743' :"Permission List",
22 '09f0c5159c5e34504e453eff3fc70324' :"Account Management",
23 '054176c3a541fb2d4b63e29360c749aa' :"Members List",
24 '8a25a3ae30ab6e8ceb5b8c4009a3336f' :"Role / Position",
25 '17050e1914aff1e423a84e76db8ab0d1' :"[All]",
26 '5bc3fd20294c17c9803942958fd7f26d' :"Show Inactive",
27 '4d1c8263ba1036754f8db14a98f9f006' :"Reload",
28 'f2a6c498fb90ee345d997f888fce3b18' :"Delete",
29 'ec3249f16ee5880d4c1acb752e5c925f' :"Switch to Selected User",
30 '4d3d769b812b6faa6b76e1a8abaece2d' :"Active",
31 '49ee3087348e8d44e1feda1917443987' :"Name",
32 'e55f75a29310d7b60f7ac1d390c8ae42' :"Module",
33 'b5a7adde1af5c87d7fd797b6245c2a39' :"Description",
34 'aba9f7d7443652e858969bfc280690b1' :"Manage Groups"
37 'activeButton_offtext' : '5bc3fd20294c17c9803942958fd7f26d' /* Show Inactive */ ,
38 'activeButton_ontext' : 'b15aafc19dc2ba4b788adf77268d8ca4' /* Hide Inactive */ ,
39 'activeButton_html' : '5bc3fd20294c17c9803942958fd7f26d' /* Show Inactive */
42 part : ["BAdmin", "Staff" ],
43 order : '003-Pman.Tab.BAdminStaff',
45 parent : 'Pman.Tab.BAdmin',
46 name : "unnamed module",
49 _tree : function(_data)
56 title : _this._strings['09f0c5159c5e34504e453eff3fc70324'] /* Account Management */,
58 activate : function (_self)
60 if ( _this.group_grid) {
61 _this.group_grid.store.load({});
65 xns : Roo.bootstrap.panel,
66 '|xns' : 'Roo.bootstrap.panel',
69 xns : Roo.bootstrap.layout,
70 '|xns' : 'Roo.bootstrap.layout',
74 xns : Roo.bootstrap.layout,
75 '|xns' : 'Roo.bootstrap.layout'
82 xns : Roo.bootstrap.layout,
83 '|xns' : 'Roo.bootstrap.layout'
93 title : _this._strings['054176c3a541fb2d4b63e29360c749aa'] /* Members List */,
95 activate : function (_self)
97 _this.edit_btn.el.hide();
98 _this.delete_btn.el.hide();
99 _this.addToGroupBtn.el.hide();
100 _this.removeFromGroupBtn.el.hide();
101 _this.switch_btn.el.hide();
103 if(_this.member_grid) {
104 _this.member_grid.footer.onClick('first');
107 render : function (_self)
109 _this.member_panel = _self;
112 xns : Roo.bootstrap.panel,
113 '|xns' : 'Roo.bootstrap.panel',
115 xtype : 'NavSimplebar',
117 '|xns' : 'Roo.bootstrap',
121 style : 'width: 100%;',
123 '|xns' : 'Roo.bootstrap',
127 style : 'width: 100%;',
129 '|xns' : 'Roo.bootstrap',
133 style : 'width: 100%;',
135 '|xns' : 'Roo.bootstrap',
141 '|xns' : 'Roo.bootstrap',
147 '|xns' : 'Roo.bootstrap',
151 placeholder : _this._strings['9bac86fd9f499d47cea5f2fd70d701c1'] /* search for account */,
153 render : function (_self)
155 _this.searchBox = this;
157 specialkey : function (_self, e)
159 if(e.keyCode == e.ENTER) {
160 if (_this.member_grid) {
161 _this.member_grid.footer.onClick('first');
169 '|xns' : 'Roo.bootstrap',
172 html : _this._strings['cdb6b6bab1fd18b9dbfe3fb84a5d34ae'] /* <i class="fa fa-search"></i> */,
174 click : function (_self, e)
176 _this.member_grid.footer.onClick('first');
180 '|xns' : 'Roo.bootstrap'
190 '|xns' : 'Roo.bootstrap',
194 cls : 'roo-toolbar-button',
196 html : _this._strings['ec211f7c20af43e742bf2570c3cb84f9'] /* Add */,
199 click : function (_self, e)
201 Pman.Dialog.BAdminStaff.show({
203 company_id : Pman.Login.authUser.company_id
206 if(res.length_oath_key * 1 < 1){
207 _this.member_grid.footer.onClick('first');
211 Pman.Dialog.BAdminStaffTwoFactorQRCode.show({
216 _this.member_grid.footer.onClick('first');
223 '|xns' : 'Roo.bootstrap'
227 cls : 'roo-toolbar-button',
229 html : _this._strings['7dce122004969d56ae2e0245cb754d35'] /* Edit */,
232 click : function (_self, e)
234 var sel = _this.member_grid.getSelectionModel().getSelections();
237 Roo.bootstrap.MessageBox.alert('Error', 'Please select a person');
242 Roo.bootstrap.MessageBox.alert('Error', 'Please select a single person');
246 var s = _this.member_grid.getSelectionModel().getSelected();
248 if(s.data.id * 1 < 1){
249 Roo.bootstrap.MessageBox.alert('Error', 'Invalid person');
253 Pman.Dialog.BAdminStaff.show( { id : s.data.id }, function() {
254 _this.member_grid.footer.onClick('first');
258 render : function (_self)
260 _this.edit_btn = this;
262 this.el.setVisibilityMode(Roo.Element.DISPLAY);
268 '|xns' : 'Roo.bootstrap'
272 cls : 'roo-toolbar-button',
274 html : _this._strings['f2a6c498fb90ee345d997f888fce3b18'] /* Delete */,
277 click : function (_self, e)
280 Pman.genericDelete(_this.member_panel, 'core_person');
284 render : function (_self)
286 _this.delete_btn = this;
288 this.el.setVisibilityMode(Roo.Element.DISPLAY);
294 '|xns' : 'Roo.bootstrap'
298 cls : 'roo-toolbar-button',
300 html : _this._strings['05b763f7d24f32575493b3c23f299b0e'] /* Add To Group */,
303 click : function (_self, e)
305 var sel = _this.member_grid.getSelectionModel().getSelections();
308 Roo.bootstrap.MessageBox.alert('Error', 'Please select a person');
314 Roo.each(sel, function(r){
315 if(r.data.id * 1 < 1){
323 Roo.bootstrap.MessageBox.alert('Error', 'Please select a person');
327 Pman.Dialog.BAdminAddToGroup.show({
328 user_ids : ids.join(',')
331 _this.member_grid.footer.onClick('first');
335 render : function (_self)
337 _this.addToGroupBtn = this;
339 this.el.setVisibilityMode(Roo.Element.DISPLAY);
345 '|xns' : 'Roo.bootstrap'
349 cls : 'roo-toolbar-button',
351 html : _this._strings['e0a7cc944485bdedafb92b0cf98632fa'] /* Remove From Group */,
354 click : function (_self, e)
356 var sel = _this.member_grid.getSelectionModel().getSelections();
359 Roo.bootstrap.MessageBox.alert('Error', 'Please select a person');
365 Roo.each(sel, function(r){
366 if(r.data.id * 1 < 1){
374 Roo.bootstrap.MessageBox.alert('Error', 'Please select a person');
378 var group = _this.group_grid.getSelectionModel().getSelected();
380 if(!group || group.data.id < 1){
381 Roo.bootstrap.MessageBox.alert('Error', 'Please select a group');
386 url: baseURL + '/Roo/Core_group',
389 group_id : group.data.id,
391 user_ids : ids.join(',')
393 success: function(res){
394 _this.member_grid.footer.onClick('first');
401 render : function (_self)
403 _this.removeFromGroupBtn = this;
405 this.el.setVisibilityMode(Roo.Element.DISPLAY);
411 '|xns' : 'Roo.bootstrap'
415 cls : 'roo-toolbar-button',
417 html : _this._strings['ec3249f16ee5880d4c1acb752e5c925f'] /* Switch to Selected User */,
420 click : function (_self, e)
422 var s = _this.member_grid.getSelectionModel().getSelections();
425 Roo.MessageBox.alert("Error", "Select a Person");
430 url : baseURL+ '/Login.php',
432 'switch' : s[0].data.id
435 success : function() {
436 document.location = baseURL + '?ts=' + Math.random();
439 failure : function(d) {
441 Roo.MessageBox.alert("Error", d);
445 render : function (_self)
447 _this.switch_btn = this;
449 this.el.setVisibilityMode(Roo.Element.DISPLAY);
455 '|xns' : 'Roo.bootstrap'
471 auto_hide_footer : true,
472 cellSelection : true,
479 cellclick : function (_self, el, rowIndex, columnIndex, e)
481 var di = _this.member_grid.colModel.getDataIndex(columnIndex);
483 if (di != 'active') {
487 var rec = _this.member_grid.store.getAt(rowIndex);
489 rec.set('active', rec.data.active ? 0 : 1);
493 // get the row number to make class x-row-0, x-row-1
495 if(rec.data.active * 1 != 1){
496 var el = _this.member_grid.getRowDom(rowIndex);
498 el.addClass('x-grid-row-fadeout');
500 el.on('transitionend',function(){
501 _this.member_grid.ds.remove(rec);
503 },this,{single:true});
506 celldblclick : function (_self, el, rowIndex, columnIndex, e)
508 var di = _this.member_grid.colModel.getDataIndex(columnIndex);
510 if (di == 'active') {
513 var s = _this.member_grid.store.getAt(rowIndex);
515 if(s.data.id * 1 < 1){
519 if (di == 'member_of') {
520 Pman.Dialog.BAdminStaffGroups.show( s.data , function() {
521 _this.member_grid.footer.onClick('first');
525 // show edit user dialog..
529 Pman.Dialog.BAdminStaff.show( s.data , function() {
530 _this.member_grid.footer.onClick('first');
534 render : function (_self)
536 _this.member_grid = _self;
541 '|xns' : 'Roo.bootstrap',
543 xtype : 'PagingToolbar',
548 '|xns' : 'Roo.bootstrap',
552 cls : 'roo-toolbar-button',
553 html : _this._strings['5bc3fd20294c17c9803942958fd7f26d'] /* Show Inactive */,
554 name : 'activeButton',
555 _offtext : _this._strings['5bc3fd20294c17c9803942958fd7f26d'] /* Show Inactive */,
556 _ontext : _this._strings['b15aafc19dc2ba4b788adf77268d8ca4'] /* Hide Inactive */,
560 render : function (_self)
562 _this.footerActiveBtn = this;
564 toggle : function (_self, e, pressed)
566 this.setText(this.pressed ? this._ontext : this._offtext);
568 _this.member_grid.footer.onClick('first');
575 '|xns' : 'Roo.bootstrap'
582 sortInfo : { field: 'name', direction: 'ASC' },
584 beforeload : function (_self, options)
586 if (!Pman.buildCompleted) {
589 options.params = options.params || {};
591 //options.params['query[type]'] = 0;
592 //options.params.active = 1;
594 if(!_this.group_grid){
599 var group = _this.group_grid.getSelectionModel().getSelected();
606 if(_this.footerActiveBtn && !_this.footerActiveBtn.pressed){
607 options.params.active = 1;
610 options.params._with_group_membership = 1;
611 options.params['query[name_or_email]'] = _this.searchBox.getValue();
613 options.params['query[in_group]'] = group.data.id;
616 load : function (_self, records, options)
618 _this.edit_btn.el.hide();
619 _this.delete_btn.el.hide();
620 _this.addToGroupBtn.el.hide();
621 _this.removeFromGroupBtn.el.hide();
622 _this.switch_btn.el.hide();
624 options.params.active = 1;
629 update : function (_self, record, operation)
631 if (operation != 'commit') {
634 // only used to change active status.
637 url : baseURL + '/Roo/core_person',
641 active: record.data.active
644 success : function() {
650 /*Roo.bootstrap.MessageBox.alert("Error", "saving failed", function() {
651 _this.grid.footer.onClick('first');
662 url : baseURL + '/Roo/core_person',
667 xtype : 'JsonReader',
670 totalProperty : 'total',
676 xtype : 'RowSelectionModel',
678 selectionchange : function (_self)
680 _this.edit_btn.el.hide();
681 _this.delete_btn.el.hide();
682 _this.addToGroupBtn.el.hide();
683 _this.removeFromGroupBtn.el.hide();
684 _this.switch_btn.el.hide();
686 if(!_this.member_grid.getSelectionModel().getSelections().length){
690 _this.edit_btn.el.show();
691 _this.delete_btn.el.show();
692 _this.switch_btn.el.show();
694 var group = _this.group_grid.getSelectionModel().getSelected();
696 if(!group || group.data.id < 1){
697 _this.addToGroupBtn.el.show();
701 _this.removeFromGroupBtn.el.show();
705 xns : Roo.bootstrap.Table,
706 '|xns' : 'Roo.bootstrap.Table'
710 xtype : 'ColumnModel',
713 dataIndex : 'active',
714 header : _this._strings['4d3d769b812b6faa6b76e1a8abaece2d'] /* Active */,
716 renderer : function(v) {
718 var state = v > 0 ? 'check-' : '';
719 var cls = v > 0 ? 'text-primary' : '';
721 return '<i class=\"far fa-'+ state + 'square-o ' + cls + '\" aria-hidden=\"true\"></i>';
731 xtype : 'ColumnModel',
734 header : _this._strings['49ee3087348e8d44e1feda1917443987'] /* Name */,
736 renderer : function(v,x,r) {
737 if(r.data.active * 1 != 1){
738 return "<span class='cell-strikethrough'>"+String.format('{0}', v)+"</span>";
740 return String.format('{0}', v);
749 xtype : 'ColumnModel',
752 header : _this._strings['8a25a3ae30ab6e8ceb5b8c4009a3336f'] /* Role / Position */,
754 renderer : function(v) { return String.format('{0}', v); },
762 xtype : 'ColumnModel',
764 dataIndex : 'member_of',
765 header : _this._strings['a37ede293936e29279ed543129451ec3'] /* Groups */,
767 renderer : function(v) {
768 return String.format('{0}', v).split("\n").join("<br/>");
776 xtype : 'ColumnModel',
779 header : _this._strings['ce8ae9da5b7cd6c3df2929543a9af92d'] /* Email */,
781 renderer : function (v,x,r) {
782 if(r.data.active * 1 != 1){
783 return (v.length && v.indexOf('@') > 0 ) ?
784 String.format('<a href="mailto:{0}" class="cell-strikethrough">{0}</a>',v) : v;
786 return (v.length && v.indexOf('@') > 0 ) ?
787 String.format('<a href="mailto:{0}">{0}</a>',v) : v;
806 title : _this._strings['25f57527ae8a27c94fb5230b5486c743'] /* Permission List */,
808 activate : function (_self)
810 if(_this.permission_grid) {
811 _this.permission_grid.store.load({});
814 render : function (_self)
816 _this.permission_panel = this;
819 xns : Roo.bootstrap.panel,
820 '|xns' : 'Roo.bootstrap.panel',
823 cellSelection : true,
831 cellclick : function (_self, el, rowIndex, columnIndex, e)
833 var di = _this.permission_grid.colModel.getDataIndex(columnIndex);
835 var r = _this.permission_grid.store.getAt(rowIndex);
837 if(di == 'rightname' || di == 'descript' || r.data.id * 1 < 1) {
843 var accessmask = r.data.accessmask.split('').sort().join('');
844 var fullmask = r.data.FullMask.split('').sort().join('');
846 r.set('accessmask', (accessmask == fullmask) ? '' : r.data.FullMask);
861 var target = mapping[di];
863 if(r.data.FullMask.indexOf(target) === -1){
867 var accessmask = r.data.accessmask.split('');
869 if(accessmask.indexOf(target) !== -1){
870 accessmask.splice(accessmask.indexOf(target), 1);
872 accessmask.push(target);
875 r.set('accessmask', accessmask.sort().join(''));
880 render : function (_self)
882 _this.permission_grid = this;
884 if(_this.permission_panel.active) {
886 _this.permission_grid.store.load({});
892 '|xns' : 'Roo.bootstrap',
896 sortInfo : { field: 'rightname', direction: 'ASC' },
898 beforeload : function (_self, o)
900 if (!Pman.buildCompleted) {
903 var group = _this.group_grid.getSelectionModel().getSelected();
906 _this.permission_panel.el.mask('Please select a group');
911 if(group.data.id * 1 < 1){
912 _this.permission_panel.el.mask('Please select a group on the left');
917 _this.permission_panel.el.unmask();
919 o.params = o.params || {};
922 o.params.group_id = group.data.id;
925 update : function (_self, record, operation)
927 if (operation != 'commit') {
931 var group = _this.group_grid.getSelectionModel().getSelected();
933 if(!group || group.data.id * 1 < 1){
939 params.group_id = group.data.id;
941 params['dataUpdate[' + record.data.id + ']'] = record.data.accessmask;
944 url : baseURL + '/Admin/GroupRights',
947 success : function() {
952 Roo.bootstrap.MessageBox.alert("Error", "saving failed", function() {
953 _this.permission_grid.store.load({});
965 url : baseURL + '/BAdmin/GroupRights.php',
970 xtype : 'JsonReader',
985 'name': 'accessmask',
999 totalProperty : 'total',
1005 xtype : 'RowSelectionModel',
1006 singleSelect : true,
1007 xns : Roo.bootstrap.Table,
1008 '|xns' : 'Roo.bootstrap.Table'
1012 xtype : 'ColumnModel',
1015 header : _this._strings['17050e1914aff1e423a84e76db8ab0d1'] /* [All] */,
1016 renderer : function (v,x,r) {
1018 if (!r.data.FullMask.length) {
1022 var accessmask = r.data.accessmask.split('').sort().join('');
1023 var fullmask = r.data.FullMask.split('').sort().join('');
1025 var state = (accessmask == fullmask) ? 'check-' : '';
1027 var cls = (accessmask == fullmask) ? 'text-primary' : '';
1029 return '<i class=\"far fa-'+ state + 'square-o ' + cls + '\" aria-hidden=\"true\"></i>';
1038 xtype : 'ColumnModel',
1039 dataIndex : 'rightname',
1040 header : _this._strings['e55f75a29310d7b60f7ac1d390c8ae42'] /* Module */,
1041 hidden : appDisabled.indexOf('Core.SuperAdmin') > 0 ? 1 : 0,
1042 renderer : function (v) {
1043 return String.format('<span tooltip="{1}">{0}</span>', v.split('.').shift(), v);
1045 xs : appDisabled.indexOf('Core.SuperAdmin') > 0 ? 0 : 2,
1050 xtype : 'ColumnModel',
1051 dataIndex : 'descript',
1052 header : _this._strings['b5a7adde1af5c87d7fd797b6245c2a39'] /* Description */,
1053 renderer : function (v) {
1054 return String.format('{0}', v ? v : '');
1056 xs : appDisabled.indexOf('Core.SuperAdmin') > 0 ? 6 : 4,
1061 xtype : 'ColumnModel',
1064 header : _this._strings['ec211f7c20af43e742bf2570c3cb84f9'] /* Add */,
1065 renderer : function (v,x,r) {
1067 if (r.data.FullMask.indexOf('A') === -1) {
1071 var state = (r.data.accessmask.indexOf('A') !== -1) ? 'check-' : '';
1072 var cls = (r.data.accessmask.indexOf('A') !== -1) ? 'text-primary' : '';
1074 return '<i class=\"far fa-'+ state + 'square-o ' + cls + '\" aria-hidden=\"true\"></i>';
1082 xtype : 'ColumnModel',
1085 header : _this._strings['7dce122004969d56ae2e0245cb754d35'] /* Edit */,
1086 renderer : function (v,x,r) {
1088 if (r.data.FullMask.indexOf('E') === -1) {
1092 var state = (r.data.accessmask.indexOf('E') !== -1) ? 'check-' : '';
1093 var cls = (r.data.accessmask.indexOf('E') !== -1) ? 'text-primary' : '';
1095 return '<i class=\"far fa-'+ state + 'square-o ' + cls + '\" aria-hidden=\"true\"></i>';
1103 xtype : 'ColumnModel',
1105 dataIndex : 'delete',
1106 header : _this._strings['f2a6c498fb90ee345d997f888fce3b18'] /* Delete */,
1107 renderer : function (v,x,r) {
1109 if (r.data.FullMask.indexOf('D') === -1) {
1113 var state = (r.data.accessmask.indexOf('D') !== -1) ? 'check-' : '';
1114 var cls = (r.data.accessmask.indexOf('D') !== -1) ? 'text-primary' : '';
1116 return '<i class=\"far fa-'+ state + 'square-o ' + cls + '\" aria-hidden=\"true\"></i>';
1125 xtype : 'ColumnModel',
1128 header : _this._strings['f29c99f082755399839b64ebaf9f608a'] /* List / View */,
1129 renderer : function (v,x,r) {
1131 if (r.data.FullMask.indexOf('S') === -1) {
1135 var state = (r.data.accessmask.indexOf('S') !== -1) ? 'check-' : '';
1136 var cls = (r.data.accessmask.indexOf('S') !== -1) ? 'text-primary' : '';
1138 return '<i class=\"far fa-'+ state + 'square-o ' + cls + '\" aria-hidden=\"true\"></i>';
1147 xtype : 'ColumnModel',
1149 dataIndex : 'print',
1150 header : _this._strings['4f3cdff2e6a5e08440be182ef40d93f7'] /* Print / Export */,
1151 renderer : function (v,x,r) {
1153 if (r.data.FullMask.indexOf('P') === -1) {
1157 var state = (r.data.accessmask.indexOf('P') !== -1) ? 'check-' : '';
1158 var cls = (r.data.accessmask.indexOf('P') !== -1) ? 'text-primary' : '';
1160 return '<i class=\"far fa-'+ state + 'square-o ' + cls + '\" aria-hidden=\"true\"></i>';
1174 fitContainer : true,
1177 title : _this._strings['a37ede293936e29279ed543129451ec3'] /* Groups */,
1179 activate : function (_self)
1181 if (_this.group_grid) {
1182 _this.group_grid.store.load({});
1185 render : function (_self)
1187 _this.group_panel = _self;
1190 xns : Roo.bootstrap.panel,
1191 '|xns' : 'Roo.bootstrap.panel',
1193 xtype : 'NavSimplebar',
1194 xns : Roo.bootstrap,
1195 '|xns' : 'Roo.bootstrap',
1199 xns : Roo.bootstrap,
1200 '|xns' : 'Roo.bootstrap',
1204 cls : 'account-management-group-nav-item',
1205 xns : Roo.bootstrap,
1206 '|xns' : 'Roo.bootstrap',
1210 html : _this._strings['aba9f7d7443652e858969bfc280690b1'] /* Manage Groups */,
1211 xns : Roo.bootstrap,
1212 '|xns' : 'Roo.bootstrap',
1215 xns : Roo.bootstrap,
1216 '|xns' : 'Roo.bootstrap',
1221 html : _this._strings['ec211f7c20af43e742bf2570c3cb84f9'] /* Add */,
1222 isContainer : false,
1223 preventDefault : true,
1225 click : function (_self, e)
1227 Pman.Dialog.BAdminGroups.show({ id : 0 }, function(res){
1228 _this.group_grid.store.load({});
1232 xns : Roo.bootstrap,
1233 '|xns' : 'Roo.bootstrap'
1237 fa : 'fa fa-pencil',
1238 html : _this._strings['7dce122004969d56ae2e0245cb754d35'] /* Edit */,
1239 isContainer : false,
1240 preventDefault : true,
1242 click : function (_self, e)
1244 var sel = _this.group_grid.getSelectionModel().getSelected();
1247 Roo.bootstrap.MessageBox.alert('Error', 'Please select a group');
1251 if(sel.data.id * 1 < 1){
1252 Roo.bootstrap.MessageBox.alert('Error', 'The selected group is not editable');
1256 Pman.Dialog.BAdminGroups.show({ id : sel.data.id }, function(res){
1257 _this.group_grid.store.load({});
1261 xns : Roo.bootstrap,
1262 '|xns' : 'Roo.bootstrap'
1267 html : _this._strings['f2a6c498fb90ee345d997f888fce3b18'] /* Delete */,
1268 isContainer : false,
1269 preventDefault : true,
1271 click : function (_self, e)
1273 var sel = _this.group_grid.getSelectionModel().getSelected();
1276 Roo.bootstrap.MessageBox.alert('Error', 'Please select a group');
1280 if(sel.data.id * 1 < 1){
1281 Roo.bootstrap.MessageBox.alert('Error', 'The selected group is not editable');
1285 var deleteIt = function()
1288 url: baseURL + '/Roo/Core_group',
1291 _delete : sel.data.id
1293 success: function(res){
1294 _this.group_grid.store.load({});
1300 Roo.bootstrap.MessageBox.confirm('Confirm', 'Are you sure to delete the group?',function(ret) {
1313 xns : Roo.bootstrap,
1314 '|xns' : 'Roo.bootstrap'
1318 fa : 'fa fa-refresh',
1319 html : _this._strings['4d1c8263ba1036754f8db14a98f9f006'] /* Reload */,
1320 isContainer : false,
1321 preventDefault : true,
1323 click : function (_self, e)
1325 _this.group_grid.store.load({});
1328 xns : Roo.bootstrap,
1329 '|xns' : 'Roo.bootstrap'
1342 cls : 'table-fixed',
1346 rowSelection : true,
1349 render : function (_self)
1351 _this.group_grid = _self;
1353 if (_this.group_panel.active) {
1354 _this.group_grid.store.load({});
1357 rowdblclick : function (_self, el, rowIndex, e)
1359 var sel = _this.group_grid.store.getAt(rowIndex);
1361 if(!sel || sel.data.id * 1 < 1){
1365 Pman.Dialog.BAdminGroups.show({ id : sel.data.id }, function(res){
1366 _this.group_grid.store.load({});
1369 rowsrendered : function (_self)
1371 if(this.ds.getCount() * 1 < 1){
1375 var sm = _this.group_grid.getSelectionModel();
1377 sm.selectFirstRow();
1378 sm.fireEvent('afterselectionchange', sm);
1382 xns : Roo.bootstrap,
1383 '|xns' : 'Roo.bootstrap',
1387 sortInfo : { field: 'name', direction: 'ASC'},
1389 beforeload : function (_self, options)
1391 if (!Pman.buildCompleted) {
1394 options.params = options.params || {};
1396 options.params.type = 0;
1398 options.params._add_everyone = 1;
1399 options.params.limit = 999;
1403 '|xns' : 'Roo.data',
1405 xtype : 'HttpProxy',
1407 url : baseURL + '/Roo/core_group',
1412 xtype : 'JsonReader',
1423 'name': 'group_member_count',
1427 'name': 'display_name',
1437 totalProperty : 'total',
1443 xtype : 'RowSelectionModel',
1444 singleSelect : true,
1446 afterselectionchange : function (_self)
1448 if(_this.footerActiveBtn){
1449 _this.footerActiveBtn.setActive(false);
1450 _this.footerActiveBtn.fireEvent('toggle', _this.footerActiveBtn);
1453 if(_this.permission_grid){
1454 _this.permission_grid.store.load({});
1459 xns : Roo.bootstrap.Table,
1460 '|xns' : 'Roo.bootstrap.Table'
1464 xtype : 'ColumnModel',
1467 header : _this._strings['49ee3087348e8d44e1feda1917443987'] /* Name */,
1469 renderer : function(v,x,r) {
1471 if (r.data.id == 0) {
1472 return '<b>' + "All Staff" + '</b>';
1475 if (r.data.id == -1) {
1476 return '<b>' + "Not in a Group" + '</b>';
1479 var vv = (r.json.display_name.length) ? r.json.display_name : v;
1481 if (v == 'Administrators') {
1482 return '<b>' + vv + '</b>';
1485 if (r.data.leader) {
1486 return vv + ' (' + r.json.leader_name + ')';
1489 return String.format('{0} ({1})',vv, r.json.group_member_count);