1 //<script type="text/javascript">
3 // Auto generated file - created by app.Builder.js- do not edit directly (at present!)
7 // register the module first
8 Pman.on('beforeload', function()
11 part : ["Admin","LogDrill"],
12 modKey : '003-Pman.Tab.AdminLogDrill',
13 module : Pman.Tab.AdminLogDrill,
15 parent : Pman.Tab.AdminLogs,
16 name : "Pman.Tab.AdminLogDrill",
22 Pman.Tab.AdminLogDrill = new Roo.util.Observable({
28 add : function(parentLayout, region)
32 this.parentLayout = parentLayout;
34 this.panel = parentLayout.addxtype({
35 xtype: 'NestedLayoutPanel',
39 title : "Event Drilldown",
41 xtype: 'BorderLayout',
48 activate : function() {
49 _this.datepanel = this;
51 _this.dategrid.ds.load({});
67 _this.dategrid = this;
68 //_this.dialog = Pman.Dialog.FILL_IN
69 if (_this.panel.active) {
73 rowclick : function (_self, rowIndex, e)
75 _this.tablegrid.footer.onClick('first');
78 autoExpandColumn : 'person_name',
84 beforeload : function (_self, o)
86 if (! _this.dateFrom) {
89 o.params = o.params || {};
91 var act = _this.actionSel ? _this.actionSel.getValue() : '';
93 o.params.action = act;
95 var tbl = _this.affectSel ? _this.affectSel.getValue() : '';
97 o.params.on_table = tbl;
99 act = _this.dateFrom.getValue();
101 o.params['query[from]'] = act.format('Y-m-d');
103 act = _this.dateTo.getValue();
105 o.params['query[to]'] = act.format('Y-m-d');
110 o.params['query[person_sum]'] = 1;
111 o.params._columns = 'person_id,person_id_name,person_id_email,qty';
112 o.params.limit = 999;
117 sortInfo : { field : 'person_name', direction: 'ASC' },
122 url : baseURL + '/Roo/Events.php'
127 totalProperty : 'total',
136 'name': 'person_name',
140 'name': 'event_when',
142 'dateFormat': 'Y-m-d'
169 'name': 'person_id_id',
173 'name': 'person_id_office_id',
177 'name': 'person_id_name',
181 'name': 'person_id_phone',
185 'name': 'person_id_fax',
189 'name': 'person_id_email',
193 'name': 'person_id_company_id',
197 'name': 'person_id_role',
201 'name': 'person_id_active',
205 'name': 'person_id_remarks',
209 'name': 'person_id_passwd',
213 'name': 'person_id_owner_id',
217 'name': 'person_id_lang',
221 'name': 'person_id_no_reset_sent',
225 'name': 'person_id_action_type',
229 'name': 'person_id_project_id',
233 'name': 'person_id_deleted_by',
237 'name': 'person_id_deleted_dt',
256 render : function (_self)
258 _this.dateFrom = _self;
260 change : function (_self, newValue, oldValue)
262 _this.dategrid.ds.load({});
266 value : (function() { var d = new Date(); return d.format('Y-m-01'); })()
272 render : function (_self)
274 _this.dateTo = _self;
276 change : function (_self, newValue, oldValue)
278 _this.dategrid.ds.load({});
282 value : (function() { var d = new Date();d = d.add(Date.MONTH, 1) ; return d.format('Y-m-01'); })()
288 xtype: 'ColumnModel',
290 dataIndex : 'person_id_name',
291 header : 'Person name',
294 renderer : function(v,x,r) {
295 return String.format('{0} <<a href="mailto:{1}">{1}</a>>', v, r.data.person_id_email);
299 xtype: 'ColumnModel',
305 renderer : function(v) { return String.format('{0}', v); }
314 activate : function() {
315 _this.tablepanel = this;
316 if (_this.tablegrid) {
317 _this.tablegrid.footer.onClick('first');
325 tableName : 'Events',
333 _this.tablegrid = this;
334 //_this.dialog = Pman.Dialog.FILL_IN
335 if (_this.tablepanel.active) {
336 this.footer.onClick('first');
339 rowclick : function (_self, rowIndex, e)
342 _this.panel.layout.getRegion('east').getActivePanel().grid.footer.onClick('first');
345 autoExpandColumn : 'person_name',
351 beforeload : function (_self, o)
353 if (! _this.dategrid) {
357 var s = _this.dategrid.selModel.getSelected();
359 _this.tablegrid.view.el.mask("Select a person");
362 _this.tablegrid.view.el.unmask();
364 o.params = o.params || {};
365 var act = _this.actionSel.getValue();
367 o.params.action = act;
369 var tbl = _this.affectSel.getValue();
371 o.params.on_table = tbl;
374 act = _this.dateFrom.getValue();
376 o.params['query[from]'] = act.format('Y-m-d');
378 act = _this.dateTo.getValue();
380 o.params['query[to]'] = act.format('Y-m-d');
382 o.params.person_id = s.data.person_id;
383 o.params['query[table_sum]'] = 1;
384 o.params._columns = 'on_table,qty,uqty';
390 sortInfo : { field : 'on_table', direction: 'ASC' },
395 url : baseURL + '/Roo/Events.php'
400 totalProperty : 'total',
409 'name': 'person_name',
413 'name': 'event_when',
415 'dateFormat': 'Y-m-d'
442 'name': 'person_id_id',
446 'name': 'person_id_office_id',
450 'name': 'person_id_name',
454 'name': 'person_id_phone',
458 'name': 'person_id_fax',
462 'name': 'person_id_email',
466 'name': 'person_id_company_id',
470 'name': 'person_id_role',
474 'name': 'person_id_active',
478 'name': 'person_id_remarks',
482 'name': 'person_id_passwd',
486 'name': 'person_id_owner_id',
490 'name': 'person_id_lang',
494 'name': 'person_id_no_reset_sent',
498 'name': 'person_id_action_type',
502 'name': 'person_id_project_id',
506 'name': 'person_id_deleted_by',
510 'name': 'person_id_deleted_dt',
517 xtype: 'PagingToolbar',
521 displayMsg : "Displaying Events{0} - {1} of {2}",
522 emptyMsg : "No Events found"
532 select : function (combo, record, index)
534 _this.dategrid.ds.load({});
536 render : function (_self)
538 _this.actionSel = _self;
542 displayField : 'action',
544 emptyText : "Select Action",
545 forceSelection : true,
547 loadingText : "Searching...",
551 qtip : "Select Action",
552 queryParam : 'query[action]',
553 selectOnFocus : true,
554 tpl : '<div class="x-grid-cell-text x-btn button"><b>{action}</b> </div>',
555 triggerAction : 'all',
557 valueField : 'action',
563 beforeload : function (_self, o)
565 o.params = o.params || {};
566 // staff can see all logs, other companies can only see their own.
567 if (Pman.Login.authUser.company_id_comptype != 'OWNER') {
568 o.params.company_id = Pman.Login.authUser.company_id;
570 o.params._distinct = 'action';
571 o.params._columns ='action';
575 sortInfo : { field : 'action' , direction : 'ASC' },
580 url : baseURL + '/Roo/Events.php'
585 totalProperty : 'total',
594 'name': 'person_name',
598 'name': 'event_when',
600 'dateFormat': 'Y-m-d'
627 'name': 'person_id_id',
631 'name': 'person_id_office_id',
635 'name': 'person_id_name',
639 'name': 'person_id_phone',
643 'name': 'person_id_fax',
647 'name': 'person_id_email',
651 'name': 'person_id_company_id',
655 'name': 'person_id_role',
659 'name': 'person_id_active',
663 'name': 'person_id_remarks',
667 'name': 'person_id_passwd',
671 'name': 'person_id_owner_id',
675 'name': 'person_id_lang',
679 'name': 'person_id_no_reset_sent',
683 'name': 'person_id_action_type',
687 'name': 'person_id_project_id',
691 'name': 'person_id_deleted_by',
695 'name': 'person_id_deleted_dt',
706 select : function (combo, record, index)
708 _this.dategrid.ds.load({});
710 render : function (_self)
712 _this.affectSel = _self;
716 displayField : 'on_table',
718 emptyText : "Select Affects",
719 forceSelection : true,
721 loadingText : "Searching...",
725 qtip : "Select Action",
726 queryParam : 'query[on_table]',
727 selectOnFocus : true,
728 tpl : '<div class="x-grid-cell-text x-btn button"><b>{on_table}</b> </div>',
729 triggerAction : 'all',
731 valueField : 'action',
737 beforeload : function (_self, o)
739 o.params = o.params || {};
740 // staff can see all logs, other companies can only see their own.
741 if (Pman.Login.authUser.company_id_comptype != 'OWNER') {
742 o.params.company_id = Pman.Login.authUser.company_id;
744 o.params._distinct = 'on_table';
745 o.params._columns ='on_table';
749 sortInfo : { field : 'on_table' , direction : 'ASC' },
754 url : baseURL + '/Roo/Events.php'
759 totalProperty : 'total',
768 'name': 'person_name',
772 'name': 'event_when',
774 'dateFormat': 'Y-m-d'
801 'name': 'person_id_id',
805 'name': 'person_id_office_id',
809 'name': 'person_id_name',
813 'name': 'person_id_phone',
817 'name': 'person_id_fax',
821 'name': 'person_id_email',
825 'name': 'person_id_company_id',
829 'name': 'person_id_role',
833 'name': 'person_id_active',
837 'name': 'person_id_remarks',
841 'name': 'person_id_passwd',
845 'name': 'person_id_owner_id',
849 'name': 'person_id_lang',
853 'name': 'person_id_no_reset_sent',
857 'name': 'person_id_action_type',
861 'name': 'person_id_project_id',
865 'name': 'person_id_deleted_by',
869 'name': 'person_id_deleted_dt',
880 xtype: 'ColumnModel',
882 dataIndex : 'on_table',
886 renderer : function(v) { return String.format('{0}', v); }
889 xtype: 'ColumnModel',
892 header : '#Affected',
895 renderer : function(v) { return String.format('{0}', v); }
898 xtype: 'ColumnModel',
904 renderer : function(v) { return String.format('{0}', v); }
913 activate : function() {
914 _this.detailpanel = this;
915 if (_this.detailgrid) {
916 _this.detailgrid.footer.onClick('first');
924 tableName : 'Events',
932 _this.detailgrid = this;
933 //_this.dialog = Pman.Dialog.FILL_IN
934 if (_this.detailpanel.active) {
935 this.footer.onClick('first');
939 autoExpandColumn : 'person_name',
945 beforeload : function (_self, o)
947 if (! _this.dategrid) {
951 o.params = o.params || {};
953 var s = _this.dategrid.selModel.getSelected();
955 _this.detailgrid.view.el.mask("Select a person");
959 o.params.person_id = s.data.person_id;
961 var s = _this.tablegrid.selModel.getSelected();
963 _this.detailgrid.view.el.mask("Select a table");
966 o.params.on_table = s.data.on_table;
968 _this.detailgrid.view.el.unmask();
970 var act = _this.actionSel.getValue();
972 o.params.action = act;
974 var tbl = _this.affectSel.getValue();
976 o.params.on_table = tbl;
980 act = _this.dateFrom.getValue();
982 o.params['query[from]'] = act.format('Y-m-d');
984 act = _this.dateTo.getValue();
986 o.params['query[to]'] = act.format('Y-m-d');
989 //o.params['query[table_d]'] = 1;
990 //o.params._columns = 'on_table,qty,uqty';
996 sortInfo : { field : 'event_when', direction: 'DESC' },
1001 url : baseURL + '/Roo/Events.php'
1004 xtype: 'JsonReader',
1006 totalProperty : 'total',
1015 'name': 'person_name',
1019 'name': 'event_when',
1021 'dateFormat': 'Y-m-d'
1040 'name': 'person_id',
1048 'name': 'person_id_id',
1052 'name': 'person_id_office_id',
1056 'name': 'person_id_name',
1060 'name': 'person_id_phone',
1064 'name': 'person_id_fax',
1068 'name': 'person_id_email',
1072 'name': 'person_id_company_id',
1076 'name': 'person_id_role',
1080 'name': 'person_id_active',
1084 'name': 'person_id_remarks',
1088 'name': 'person_id_passwd',
1092 'name': 'person_id_owner_id',
1096 'name': 'person_id_lang',
1100 'name': 'person_id_no_reset_sent',
1104 'name': 'person_id_action_type',
1108 'name': 'person_id_project_id',
1112 'name': 'person_id_deleted_by',
1116 'name': 'person_id_deleted_dt',
1123 xtype: 'PagingToolbar',
1127 displayMsg : "Displaying Events{0} - {1} of {2}",
1128 emptyMsg : "No Events found"
1132 xtype: 'ColumnModel',
1137 renderer : function(v) { return String.format('{0}', v); }
1140 xtype: 'ColumnModel',
1142 header : 'Event when',
1144 dataIndex : 'event_when',
1145 renderer : function(v) { return String.format('{0}', v ? v.format('d/M/Y') : ''); }
1148 xtype: 'ColumnModel',
1150 dataIndex : 'action',
1153 renderer : function(v) { return String.format('{0}', v); }
1156 xtype: 'ColumnModel',
1158 dataIndex : 'ipaddr',
1161 renderer : function(v) { return String.format('{0}', v); }
1164 xtype: 'ColumnModel',
1166 dataIndex : 'on_id',
1169 renderer : function(v) { return String.format('{0}', v); }
1172 xtype: 'ColumnModel',
1176 dataIndex : 'remarks',
1177 renderer : function(v) { return String.format('{0}', v); }
1186 activate : function() {
1187 _this.daypanel = this;
1188 if (_this.daygrid) {
1189 _this.daygrid.footer.onClick('first');
1194 fitContainer : true,
1197 tableName : 'Events',
1198 title : "Daily summary",
1205 _this.daygrid = this;
1206 //_this.dialog = Pman.Dialog.FILL_IN
1207 if (_this.daypanel.active) {
1208 this.footer.onClick('first');
1212 autoExpandColumn : 'person_name',
1218 beforeload : function (_self, o)
1220 if (! _this.dategrid) {
1224 o.params = o.params || {};
1226 var s = _this.dategrid.selModel.getSelected();
1228 _this.detailgrid.view.el.mask("Select a person");
1232 o.params.person_id = s.data.person_id;
1234 var s = _this.tablegrid.selModel.getSelected();
1236 _this.detailgrid.view.el.mask("Select a table");
1239 o.params.on_table = s.data.on_table;
1241 _this.detailgrid.view.el.unmask();
1243 var act = _this.actionSel.getValue();
1245 o.params.action = act;
1247 var tbl = _this.affectSel.getValue();
1249 o.params.on_table = tbl;
1253 act = _this.dateFrom.getValue();
1255 o.params['query[from]'] = act.format('Y-m-d');
1257 act = _this.dateTo.getValue();
1259 o.params['query[to]'] = act.format('Y-m-d');
1262 o.params['query[day_sum]'] = 1;
1263 o.params._columns = 'on_day,qty,uqty';
1269 sortInfo : { field : 'on_day', direction: 'ASC' },
1274 url : baseURL + '/Roo/Events.php'
1277 xtype: 'JsonReader',
1279 totalProperty : 'total',
1288 'name': 'person_name',
1292 'name': 'event_when',
1294 'dateFormat': 'Y-m-d'
1313 'name': 'person_id',
1321 'name': 'person_id_id',
1325 'name': 'person_id_office_id',
1329 'name': 'person_id_name',
1333 'name': 'person_id_phone',
1337 'name': 'person_id_fax',
1341 'name': 'person_id_email',
1345 'name': 'person_id_company_id',
1349 'name': 'person_id_role',
1353 'name': 'person_id_active',
1357 'name': 'person_id_remarks',
1361 'name': 'person_id_passwd',
1365 'name': 'person_id_owner_id',
1369 'name': 'person_id_lang',
1373 'name': 'person_id_no_reset_sent',
1377 'name': 'person_id_action_type',
1381 'name': 'person_id_project_id',
1385 'name': 'person_id_deleted_by',
1389 'name': 'person_id_deleted_dt',
1396 xtype: 'PagingToolbar',
1400 displayMsg : "Displaying Events{0} - {1} of {2}",
1401 emptyMsg : "No Events found"
1405 xtype: 'ColumnModel',
1407 dataIndex : 'on_day',
1408 header : 'Event when',
1411 renderer : function(v) { return String.format('{0}', v ); }
1414 xtype: 'ColumnModel',
1417 header : '#Affected',
1420 renderer : function(v) { return String.format('{0}', v); }
1423 xtype: 'ColumnModel',
1429 renderer : function(v) { return String.format('{0}', v); }
1436 xtype: 'LayoutRegion',
1442 xtype: 'LayoutRegion',
1446 xtype: 'LayoutRegion',
1449 tabPosition : 'top',
1454 this.layout = this.panel.layout;