1 //<script type="text/javascript">
3 // Auto generated file - created by app.Builder.js- do not edit directly (at present!)
5 Pman.Tab.AdminLogDrill = new Roo.XComponent({
6 part : ["Admin","LogDrill"],
7 order : '003-Pman.Tab.AdminLogDrill',
9 parent : 'Pman.Tab.AdminLogs',
10 name : "Pman.Tab.AdminLogDrill",
18 xtype: 'NestedLayoutPanel',
22 title : "Event Drilldown",
36 render : function (_self)
38 _this.dateFrom = _self;
40 change : function (_self, newValue, oldValue)
42 _this.dategrid.ds.load({});
46 value : (function() { var d = new Date(); return d.format('Y-m-01'); })()
52 render : function (_self)
56 change : function (_self, newValue, oldValue)
58 _this.dategrid.ds.load({});
62 value : (function() { var d = new Date();d = d.add(Date.MONTH, 1) ; return d.format('Y-m-01'); })()
68 select : function (combo, record, index)
70 _this.dategrid.ds.load({});
72 render : function (_self)
74 _this.actionSel = _self;
78 displayField : 'action',
80 emptyText : "Select Action",
81 forceSelection : true,
83 loadingText : "Searching...",
87 qtip : "Select Action",
88 queryParam : 'query[action]',
90 tpl : '<div class="x-grid-cell-text x-btn button"><b>{action}</b> </div>',
91 triggerAction : 'all',
93 valueField : 'action',
99 beforeload : function (_self, o)
101 o.params = o.params || {};
102 // staff can see all logs, other companies can only see their own.
103 if (Pman.Login.authUser.company_id_comptype != 'OWNER') {
104 o.params.company_id = Pman.Login.authUser.company_id;
106 o.params._distinct = 'action';
107 o.params._columns ='action';
111 sortInfo : { field : 'action' , direction : 'ASC' },
116 url : baseURL + '/Roo/Events.php'
121 totalProperty : 'total',
130 'name': 'person_name',
134 'name': 'event_when',
136 'dateFormat': 'Y-m-d'
163 'name': 'person_id_id',
167 'name': 'person_id_office_id',
171 'name': 'person_id_name',
175 'name': 'person_id_phone',
179 'name': 'person_id_fax',
183 'name': 'person_id_email',
187 'name': 'person_id_company_id',
191 'name': 'person_id_role',
195 'name': 'person_id_active',
199 'name': 'person_id_remarks',
203 'name': 'person_id_passwd',
207 'name': 'person_id_owner_id',
211 'name': 'person_id_lang',
215 'name': 'person_id_no_reset_sent',
219 'name': 'person_id_action_type',
223 'name': 'person_id_project_id',
227 'name': 'person_id_deleted_by',
231 'name': 'person_id_deleted_dt',
242 select : function (combo, record, index)
244 _this.dategrid.ds.load({});
246 render : function (_self)
248 _this.affectSel = _self;
252 displayField : 'on_table',
254 emptyText : "Select Affects",
255 forceSelection : true,
257 loadingText : "Searching...",
261 qtip : "Select Action",
262 queryParam : 'query[on_table]',
263 selectOnFocus : true,
264 tpl : '<div class="x-grid-cell-text x-btn button"><b>{on_table}</b> </div>',
265 triggerAction : 'all',
267 valueField : 'action',
273 beforeload : function (_self, o)
275 o.params = o.params || {};
276 // staff can see all logs, other companies can only see their own.
277 if (Pman.Login.authUser.company_id_comptype != 'OWNER') {
278 o.params.company_id = Pman.Login.authUser.company_id;
280 o.params._distinct = 'on_table';
281 o.params._columns ='on_table';
285 sortInfo : { field : 'on_table' , direction : 'ASC' },
290 url : baseURL + '/Roo/Events.php'
295 totalProperty : 'total',
304 'name': 'person_name',
308 'name': 'event_when',
310 'dateFormat': 'Y-m-d'
337 'name': 'person_id_id',
341 'name': 'person_id_office_id',
345 'name': 'person_id_name',
349 'name': 'person_id_phone',
353 'name': 'person_id_fax',
357 'name': 'person_id_email',
361 'name': 'person_id_company_id',
365 'name': 'person_id_role',
369 'name': 'person_id_active',
373 'name': 'person_id_remarks',
377 'name': 'person_id_passwd',
381 'name': 'person_id_owner_id',
385 'name': 'person_id_lang',
389 'name': 'person_id_no_reset_sent',
393 'name': 'person_id_action_type',
397 'name': 'person_id_project_id',
401 'name': 'person_id_deleted_by',
405 'name': 'person_id_deleted_dt',
415 xtype: 'BorderLayout',
422 activate : function() {
423 _this.datepanel = this;
424 if (_this.dategrid) {
425 _this.dategrid.ds.load({});
433 tableName : 'Events',
441 _this.dategrid = this;
442 //_this.dialog = Pman.Dialog.FILL_IN
443 if (_this.panel.active) {
447 rowclick : function (_self, rowIndex, e)
449 _this.tablegrid.footer.onClick('first');
452 autoExpandColumn : 'person_name',
458 beforeload : function (_self, o)
462 if (! _this.dateFrom) {
467 _this.tablegrid.ds.removeAll();
468 _this.panel.layout.getRegion('east').getActivePanel().grid.ds.removeAll();
473 o.params = o.params || {};
475 var act = _this.actionSel ? _this.actionSel.getValue() : '';
477 o.params.action = act;
479 var tbl = _this.affectSel ? _this.affectSel.getValue() : '';
481 o.params.on_table = tbl;
483 act = _this.dateFrom.getValue();
485 o.params['query[from]'] = act.format('Y-m-d');
487 act = _this.dateTo.getValue();
489 o.params['query[to]'] = act.format('Y-m-d');
494 o.params['query[person_sum]'] = 1;
495 o.params._columns = 'person_id,person_id_name,person_id_email,qty,uqty';
496 o.params.limit = 999;
501 sortInfo : { field : 'person_name', direction: 'ASC' },
506 url : baseURL + '/Roo/Events.php'
511 totalProperty : 'total',
520 'name': 'person_name',
524 'name': 'event_when',
526 'dateFormat': 'Y-m-d'
553 'name': 'person_id_id',
557 'name': 'person_id_office_id',
561 'name': 'person_id_name',
565 'name': 'person_id_phone',
569 'name': 'person_id_fax',
573 'name': 'person_id_email',
577 'name': 'person_id_company_id',
581 'name': 'person_id_role',
585 'name': 'person_id_active',
589 'name': 'person_id_remarks',
593 'name': 'person_id_passwd',
597 'name': 'person_id_owner_id',
601 'name': 'person_id_lang',
605 'name': 'person_id_no_reset_sent',
609 'name': 'person_id_action_type',
613 'name': 'person_id_project_id',
617 'name': 'person_id_deleted_by',
621 'name': 'person_id_deleted_dt',
629 xtype: 'ColumnModel',
631 dataIndex : 'person_id_name',
632 header : 'Person name',
635 renderer : function(v,x,r) {
636 return String.format('{0} <<a href="mailto:{1}">{1}</a>>', v, r.data.person_id_email);
640 xtype: 'ColumnModel',
643 header : '#Affected',
646 renderer : function(v) { return String.format('{0}', v); }
649 xtype: 'ColumnModel',
655 renderer : function(v) { return String.format('{0}', v); }
664 activate : function() {
665 _this.tablepanel = this;
666 if (_this.tablegrid) {
667 _this.tablegrid.footer.onClick('first');
675 tableName : 'Events',
683 _this.tablegrid = this;
684 //_this.dialog = Pman.Dialog.FILL_IN
685 if (_this.tablepanel.active) {
686 this.footer.onClick('first');
689 rowclick : function (_self, rowIndex, e)
692 _this.panel.layout.getRegion('east').getActivePanel().grid.footer.onClick('first');
695 autoExpandColumn : 'person_name',
701 beforeload : function (_self, o)
703 if (! _this.dategrid) {
707 _this.panel.layout.getRegion('east').getActivePanel().grid.ds.removeAll();
713 var s = _this.dategrid.selModel.getSelected();
715 _this.tablegrid.view.el.mask("Select a person");
718 _this.tablegrid.view.el.unmask();
720 o.params = o.params || {};
721 var act = _this.actionSel.getValue();
723 o.params.action = act;
725 var tbl = _this.affectSel.getValue();
727 o.params.on_table = tbl;
730 act = _this.dateFrom.getValue();
732 o.params['query[from]'] = act.format('Y-m-d');
734 act = _this.dateTo.getValue();
736 o.params['query[to]'] = act.format('Y-m-d');
738 o.params.person_id = s.data.person_id;
739 o.params['query[table_sum]'] = 1;
740 o.params._columns = 'on_table,qty,uqty';
746 sortInfo : { field : 'on_table', direction: 'ASC' },
751 url : baseURL + '/Roo/Events.php'
756 totalProperty : 'total',
765 'name': 'person_name',
769 'name': 'event_when',
771 'dateFormat': 'Y-m-d'
798 'name': 'person_id_id',
802 'name': 'person_id_office_id',
806 'name': 'person_id_name',
810 'name': 'person_id_phone',
814 'name': 'person_id_fax',
818 'name': 'person_id_email',
822 'name': 'person_id_company_id',
826 'name': 'person_id_role',
830 'name': 'person_id_active',
834 'name': 'person_id_remarks',
838 'name': 'person_id_passwd',
842 'name': 'person_id_owner_id',
846 'name': 'person_id_lang',
850 'name': 'person_id_no_reset_sent',
854 'name': 'person_id_action_type',
858 'name': 'person_id_project_id',
862 'name': 'person_id_deleted_by',
866 'name': 'person_id_deleted_dt',
873 xtype: 'PagingToolbar',
877 displayMsg : "Displaying Events{0} - {1} of {2}",
878 emptyMsg : "No Events found"
882 xtype: 'ColumnModel',
884 dataIndex : 'on_table',
888 renderer : function(v) {
890 return "Login / Logout / Errors";
892 return String.format('{0}', v);
896 xtype: 'ColumnModel',
899 header : '#Affected',
902 renderer : function(v) { return String.format('{0}', v); }
905 xtype: 'ColumnModel',
911 renderer : function(v) { return String.format('{0}', v); }
920 activate : function() {
921 _this.detailpanel = this;
922 if (_this.detailgrid) {
923 _this.detailgrid.footer.onClick('first');
931 tableName : 'Events',
939 _this.detailgrid = this;
940 //_this.dialog = Pman.Dialog.FILL_IN
941 if (_this.detailpanel.active) {
942 this.footer.onClick('first');
946 autoExpandColumn : 'person_name',
952 beforeload : function (_self, o)
954 if (! _this.dategrid) {
958 o.params = o.params || {};
960 var s = _this.dategrid.selModel.getSelected();
962 _this.detailgrid.view.el.mask("Select a person");
966 o.params.person_id = s.data.person_id;
968 var s = _this.tablegrid.selModel.getSelected();
970 _this.detailgrid.view.el.mask("Select a table");
973 o.params.on_table = s.data.on_table;
975 _this.detailgrid.view.el.unmask();
977 var act = _this.actionSel.getValue();
979 o.params.action = act;
981 var tbl = _this.affectSel.getValue();
983 o.params.on_table = tbl;
987 act = _this.dateFrom.getValue();
989 o.params['query[from]'] = act.format('Y-m-d');
991 act = _this.dateTo.getValue();
993 o.params['query[to]'] = act.format('Y-m-d');
996 //o.params['query[table_d]'] = 1;
997 //o.params._columns = 'on_table,qty,uqty';
1003 sortInfo : { field : 'event_when', direction: 'DESC' },
1008 url : baseURL + '/Roo/Events.php'
1011 xtype: 'JsonReader',
1013 totalProperty : 'total',
1022 'name': 'person_name',
1026 'name': 'event_when',
1028 'dateFormat': 'Y-m-d'
1047 'name': 'person_id',
1055 'name': 'person_id_id',
1059 'name': 'person_id_office_id',
1063 'name': 'person_id_name',
1067 'name': 'person_id_phone',
1071 'name': 'person_id_fax',
1075 'name': 'person_id_email',
1079 'name': 'person_id_company_id',
1083 'name': 'person_id_role',
1087 'name': 'person_id_active',
1091 'name': 'person_id_remarks',
1095 'name': 'person_id_passwd',
1099 'name': 'person_id_owner_id',
1103 'name': 'person_id_lang',
1107 'name': 'person_id_no_reset_sent',
1111 'name': 'person_id_action_type',
1115 'name': 'person_id_project_id',
1119 'name': 'person_id_deleted_by',
1123 'name': 'person_id_deleted_dt',
1130 xtype: 'PagingToolbar',
1134 displayMsg : "Displaying Events{0} - {1} of {2}",
1135 emptyMsg : "No Events found"
1139 xtype: 'ColumnModel',
1144 renderer : function(v) { return String.format('{0}', v); }
1147 xtype: 'ColumnModel',
1149 header : 'Event when',
1151 dataIndex : 'event_when',
1152 renderer : function(v) { return String.format('{0}', v ? v.format('d/M/Y') : ''); }
1155 xtype: 'ColumnModel',
1157 dataIndex : 'action',
1160 renderer : function(v) { return String.format('{0}', v); }
1163 xtype: 'ColumnModel',
1165 dataIndex : 'ipaddr',
1168 renderer : function(v) { return String.format('{0}', v); }
1171 xtype: 'ColumnModel',
1173 dataIndex : 'on_id',
1176 renderer : function(v) { return String.format('{0}', v); }
1179 xtype: 'ColumnModel',
1183 dataIndex : 'remarks',
1184 renderer : function(v) { return String.format('{0}', v); }
1193 activate : function() {
1194 _this.daypanel = this;
1195 if (_this.daygrid) {
1196 _this.daygrid.footer.onClick('first');
1201 fitContainer : true,
1204 tableName : 'Events',
1205 title : "Daily summary",
1212 _this.daygrid = this;
1213 //_this.dialog = Pman.Dialog.FILL_IN
1214 if (_this.daypanel.active) {
1215 this.footer.onClick('first');
1219 autoExpandColumn : 'person_name',
1225 beforeload : function (_self, o)
1227 if (! _this.dategrid) {
1231 o.params = o.params || {};
1233 var s = _this.dategrid.selModel.getSelected();
1235 _this.detailgrid.view.el.mask("Select a person");
1239 o.params.person_id = s.data.person_id;
1241 var s = _this.tablegrid.selModel.getSelected();
1243 _this.detailgrid.view.el.mask("Select a table");
1246 o.params.on_table = s.data.on_table;
1248 _this.detailgrid.view.el.unmask();
1250 var act = _this.actionSel.getValue();
1252 o.params.action = act;
1254 var tbl = _this.affectSel.getValue();
1256 o.params.on_table = tbl;
1260 act = _this.dateFrom.getValue();
1262 o.params['query[from]'] = act.format('Y-m-d');
1264 act = _this.dateTo.getValue();
1266 o.params['query[to]'] = act.format('Y-m-d');
1269 o.params['query[day_sum]'] = 1;
1270 o.params._columns = 'on_day,qty,uqty';
1276 sortInfo : { field : 'on_day', direction: 'ASC' },
1281 url : baseURL + '/Roo/Events.php'
1284 xtype: 'JsonReader',
1286 totalProperty : 'total',
1295 'name': 'person_name',
1299 'name': 'event_when',
1301 'dateFormat': 'Y-m-d'
1320 'name': 'person_id',
1328 'name': 'person_id_id',
1332 'name': 'person_id_office_id',
1336 'name': 'person_id_name',
1340 'name': 'person_id_phone',
1344 'name': 'person_id_fax',
1348 'name': 'person_id_email',
1352 'name': 'person_id_company_id',
1356 'name': 'person_id_role',
1360 'name': 'person_id_active',
1364 'name': 'person_id_remarks',
1368 'name': 'person_id_passwd',
1372 'name': 'person_id_owner_id',
1376 'name': 'person_id_lang',
1380 'name': 'person_id_no_reset_sent',
1384 'name': 'person_id_action_type',
1388 'name': 'person_id_project_id',
1392 'name': 'person_id_deleted_by',
1396 'name': 'person_id_deleted_dt',
1403 xtype: 'PagingToolbar',
1407 displayMsg : "Displaying Events{0} - {1} of {2}",
1408 emptyMsg : "No Events found"
1412 xtype: 'ColumnModel',
1414 dataIndex : 'on_day',
1415 header : 'Event when',
1418 renderer : function(v) { return String.format('{0}', v ); }
1421 xtype: 'ColumnModel',
1424 header : '#Affected',
1427 renderer : function(v) { return String.format('{0}', v); }
1430 xtype: 'ColumnModel',
1436 renderer : function(v) { return String.format('{0}', v); }
1443 xtype: 'LayoutRegion',
1449 xtype: 'LayoutRegion',
1453 xtype: 'LayoutRegion',
1456 tabPosition : 'top',