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',
38 title : "Event Drilldown",
40 xtype: 'BorderLayout',
47 activate : function() {
48 _this.datepanel = this;
50 _this.dategrid.ds.load({});
66 _this.dategrid = this;
67 //_this.dialog = Pman.Dialog.FILL_IN
68 if (_this.panel.active) {
72 rowclick : function (_self, rowIndex, e)
74 _this.tablegrid.footer.onClick('first');
77 autoExpandColumn : 'person_name',
83 beforeload : function (_self, o)
85 if (! _this.dateFrom) {
88 o.params = o.params || {};
90 var act = _this.actionSel ? _this.actionSel.getValue() : '';
92 o.params.action = act;
94 var tbl = _this.affectSel ? _this.affectSel.getValue() : '';
96 o.params.on_table = tbl;
98 act = _this.dateFrom.getValue();
100 o.params['query[from]'] = act.format('Y-m-d');
102 act = _this.dateTo.getValue();
104 o.params['query[to]'] = act.format('Y-m-d');
109 o.params['query[person_sum]'] = 1;
110 o.params._columns = 'person_id,person_id_name,person_id_email,qty';
111 o.params.limit = 999;
116 sortInfo : { field : 'person_name', direction: 'ASC' },
121 url : baseURL + '/Roo/Events.php'
126 totalProperty : 'total',
135 'name': 'person_name',
139 'name': 'event_when',
141 'dateFormat': 'Y-m-d'
168 'name': 'person_id_id',
172 'name': 'person_id_office_id',
176 'name': 'person_id_name',
180 'name': 'person_id_phone',
184 'name': 'person_id_fax',
188 'name': 'person_id_email',
192 'name': 'person_id_company_id',
196 'name': 'person_id_role',
200 'name': 'person_id_active',
204 'name': 'person_id_remarks',
208 'name': 'person_id_passwd',
212 'name': 'person_id_owner_id',
216 'name': 'person_id_lang',
220 'name': 'person_id_no_reset_sent',
224 'name': 'person_id_action_type',
228 'name': 'person_id_project_id',
232 'name': 'person_id_deleted_by',
236 'name': 'person_id_deleted_dt',
255 render : function (_self)
257 _this.dateFrom = _self;
259 change : function (_self, newValue, oldValue)
261 _this.dategrid.ds.load({});
265 value : (function() { var d = new Date(); return d.format('Y-m-01'); })()
271 render : function (_self)
273 _this.dateTo = _self;
275 change : function (_self, newValue, oldValue)
277 _this.dategrid.ds.load({});
281 value : (function() { var d = new Date();d = d.add(Date.MONTH, 1) ; return d.format('Y-m-01'); })()
287 xtype: 'ColumnModel',
289 dataIndex : 'person_id_name',
290 header : 'Person name',
293 renderer : function(v,x,r) {
294 return String.format('{0} <<a href="mailto:{1}">{1}</a>>', v, r.data.person_id_email);
298 xtype: 'ColumnModel',
304 renderer : function(v) { return String.format('{0}', v); }
313 activate : function() {
314 _this.tablepanel = this;
315 if (_this.tablegrid) {
316 _this.tablegrid.footer.onClick('first');
324 tableName : 'Events',
332 _this.tablegrid = this;
333 //_this.dialog = Pman.Dialog.FILL_IN
334 if (_this.tablepanel.active) {
335 this.footer.onClick('first');
338 rowclick : function (_self, rowIndex, e)
340 _this.detailgrid.footer.onClick('first');
341 _this.panel.layout.getRegion('east').getActivePanel().grid.footer.onClick('first');
344 autoExpandColumn : 'person_name',
350 beforeload : function (_self, o)
352 if (! _this.dategrid) {
356 var s = _this.dategrid.selModel.getSelected();
358 _this.tablegrid.view.el.mask("Select a person");
361 _this.tablegrid.view.el.unmask();
363 o.params = o.params || {};
364 var act = _this.actionSel.getValue();
366 o.params.action = act;
368 var tbl = _this.affectSel.getValue();
370 o.params.on_table = tbl;
373 act = _this.dateFrom.getValue();
375 o.params['query[from]'] = act.format('Y-m-d');
377 act = _this.dateTo.getValue();
379 o.params['query[to]'] = act.format('Y-m-d');
381 o.params.person_id = s.data.person_id;
382 o.params['query[table_sum]'] = 1;
383 o.params._columns = 'on_table,qty,uqty';
389 sortInfo : { field : 'on_table', direction: 'ASC' },
394 url : baseURL + '/Roo/Events.php'
399 totalProperty : 'total',
408 'name': 'person_name',
412 'name': 'event_when',
414 'dateFormat': 'Y-m-d'
441 'name': 'person_id_id',
445 'name': 'person_id_office_id',
449 'name': 'person_id_name',
453 'name': 'person_id_phone',
457 'name': 'person_id_fax',
461 'name': 'person_id_email',
465 'name': 'person_id_company_id',
469 'name': 'person_id_role',
473 'name': 'person_id_active',
477 'name': 'person_id_remarks',
481 'name': 'person_id_passwd',
485 'name': 'person_id_owner_id',
489 'name': 'person_id_lang',
493 'name': 'person_id_no_reset_sent',
497 'name': 'person_id_action_type',
501 'name': 'person_id_project_id',
505 'name': 'person_id_deleted_by',
509 'name': 'person_id_deleted_dt',
516 xtype: 'PagingToolbar',
520 displayMsg : "Displaying Events{0} - {1} of {2}",
521 emptyMsg : "No Events found"
531 select : function (combo, record, index)
533 _this.dategrid.ds.load({});
535 render : function (_self)
537 _this.actionSel = _self;
541 displayField : 'action',
543 emptyText : "Select Action",
544 forceSelection : true,
546 loadingText : "Searching...",
550 qtip : "Select Action",
551 queryParam : 'query[action]',
552 selectOnFocus : true,
553 tpl : '<div class="x-grid-cell-text x-btn button"><b>{action}</b> </div>',
554 triggerAction : 'all',
556 valueField : 'action',
562 beforeload : function (_self, o)
564 o.params = o.params || {};
565 // staff can see all logs, other companies can only see their own.
566 if (Pman.Login.authUser.company_id_comptype != 'OWNER') {
567 o.params.company_id = Pman.Login.authUser.company_id;
569 o.params._distinct = 'action';
570 o.params._columns ='action';
574 sortInfo : { field : 'action' , direction : 'ASC' },
579 url : baseURL + '/Roo/Events.php'
584 totalProperty : 'total',
593 'name': 'person_name',
597 'name': 'event_when',
599 'dateFormat': 'Y-m-d'
626 'name': 'person_id_id',
630 'name': 'person_id_office_id',
634 'name': 'person_id_name',
638 'name': 'person_id_phone',
642 'name': 'person_id_fax',
646 'name': 'person_id_email',
650 'name': 'person_id_company_id',
654 'name': 'person_id_role',
658 'name': 'person_id_active',
662 'name': 'person_id_remarks',
666 'name': 'person_id_passwd',
670 'name': 'person_id_owner_id',
674 'name': 'person_id_lang',
678 'name': 'person_id_no_reset_sent',
682 'name': 'person_id_action_type',
686 'name': 'person_id_project_id',
690 'name': 'person_id_deleted_by',
694 'name': 'person_id_deleted_dt',
705 select : function (combo, record, index)
707 _this.dategrid.ds.load({});
709 render : function (_self)
711 _this.affectSel = _self;
715 displayField : 'on_table',
717 emptyText : "Select Affects",
718 forceSelection : true,
720 loadingText : "Searching...",
724 qtip : "Select Action",
725 queryParam : 'query[on_table]',
726 selectOnFocus : true,
727 tpl : '<div class="x-grid-cell-text x-btn button"><b>{on_table}</b> </div>',
728 triggerAction : 'all',
730 valueField : 'action',
736 beforeload : function (_self, o)
738 o.params = o.params || {};
739 // staff can see all logs, other companies can only see their own.
740 if (Pman.Login.authUser.company_id_comptype != 'OWNER') {
741 o.params.company_id = Pman.Login.authUser.company_id;
743 o.params._distinct = 'on_table';
744 o.params._columns ='on_table';
748 sortInfo : { field : 'on_table' , direction : 'ASC' },
753 url : baseURL + '/Roo/Events.php'
758 totalProperty : 'total',
767 'name': 'person_name',
771 'name': 'event_when',
773 'dateFormat': 'Y-m-d'
800 'name': 'person_id_id',
804 'name': 'person_id_office_id',
808 'name': 'person_id_name',
812 'name': 'person_id_phone',
816 'name': 'person_id_fax',
820 'name': 'person_id_email',
824 'name': 'person_id_company_id',
828 'name': 'person_id_role',
832 'name': 'person_id_active',
836 'name': 'person_id_remarks',
840 'name': 'person_id_passwd',
844 'name': 'person_id_owner_id',
848 'name': 'person_id_lang',
852 'name': 'person_id_no_reset_sent',
856 'name': 'person_id_action_type',
860 'name': 'person_id_project_id',
864 'name': 'person_id_deleted_by',
868 'name': 'person_id_deleted_dt',
879 xtype: 'ColumnModel',
881 dataIndex : 'on_table',
885 renderer : function(v) { return String.format('{0}', v); }
888 xtype: 'ColumnModel',
891 header : '#Affected',
894 renderer : function(v) { return String.format('{0}', v); }
897 xtype: 'ColumnModel',
903 renderer : function(v) { return String.format('{0}', v); }
912 activate : function() {
913 _this.detailpanel = this;
914 if (_this.detailgrid) {
915 _this.detailgrid.footer.onClick('first');
923 tableName : 'Events',
931 _this.detailgrid = this;
932 //_this.dialog = Pman.Dialog.FILL_IN
933 if (_this.detailpanel.active) {
934 this.footer.onClick('first');
938 autoExpandColumn : 'person_name',
944 beforeload : function (_self, o)
946 if (! _this.dategrid) {
950 o.params = o.params || {};
952 var s = _this.dategrid.selModel.getSelected();
954 _this.detailgrid.view.el.mask("Select a person");
958 o.params.person_id = s.data.person_id;
960 var s = _this.tablegrid.selModel.getSelected();
962 _this.detailgrid.view.el.mask("Select a table");
965 o.params.on_table = s.data.on_table;
967 _this.detailgrid.view.el.unmask();
969 var act = _this.actionSel.getValue();
971 o.params.action = act;
973 var tbl = _this.affectSel.getValue();
975 o.params.on_table = tbl;
979 act = _this.dateFrom.getValue();
981 o.params['query[from]'] = act.format('Y-m-d');
983 act = _this.dateTo.getValue();
985 o.params['query[to]'] = act.format('Y-m-d');
988 //o.params['query[table_d]'] = 1;
989 //o.params._columns = 'on_table,qty,uqty';
995 sortInfo : { field : 'event_when', direction: 'DESC' },
1000 url : baseURL + '/Roo/Events.php'
1003 xtype: 'JsonReader',
1005 totalProperty : 'total',
1014 'name': 'person_name',
1018 'name': 'event_when',
1020 'dateFormat': 'Y-m-d'
1039 'name': 'person_id',
1047 'name': 'person_id_id',
1051 'name': 'person_id_office_id',
1055 'name': 'person_id_name',
1059 'name': 'person_id_phone',
1063 'name': 'person_id_fax',
1067 'name': 'person_id_email',
1071 'name': 'person_id_company_id',
1075 'name': 'person_id_role',
1079 'name': 'person_id_active',
1083 'name': 'person_id_remarks',
1087 'name': 'person_id_passwd',
1091 'name': 'person_id_owner_id',
1095 'name': 'person_id_lang',
1099 'name': 'person_id_no_reset_sent',
1103 'name': 'person_id_action_type',
1107 'name': 'person_id_project_id',
1111 'name': 'person_id_deleted_by',
1115 'name': 'person_id_deleted_dt',
1122 xtype: 'PagingToolbar',
1126 displayMsg : "Displaying Events{0} - {1} of {2}",
1127 emptyMsg : "No Events found"
1131 xtype: 'ColumnModel',
1136 renderer : function(v) { return String.format('{0}', v); }
1139 xtype: 'ColumnModel',
1141 header : 'Event when',
1143 dataIndex : 'event_when',
1144 renderer : function(v) { return String.format('{0}', v ? v.format('d/M/Y') : ''); }
1147 xtype: 'ColumnModel',
1149 dataIndex : 'action',
1152 renderer : function(v) { return String.format('{0}', v); }
1155 xtype: 'ColumnModel',
1157 dataIndex : 'ipaddr',
1160 renderer : function(v) { return String.format('{0}', v); }
1163 xtype: 'ColumnModel',
1165 dataIndex : 'on_id',
1168 renderer : function(v) { return String.format('{0}', v); }
1171 xtype: 'ColumnModel',
1175 dataIndex : 'remarks',
1176 renderer : function(v) { return String.format('{0}', v); }
1185 activate : function() {
1186 _this.daypanel = this;
1187 if (_this.daygrid) {
1188 _this.daygrid.footer.onClick('first');
1193 fitContainer : true,
1196 tableName : 'Events',
1197 title : "Daily summary",
1204 _this.daygrid = this;
1205 //_this.dialog = Pman.Dialog.FILL_IN
1206 if (_this.daypanel.active) {
1207 this.footer.onClick('first');
1211 autoExpandColumn : 'person_name',
1217 beforeload : function (_self, o)
1219 if (! _this.dategrid) {
1223 o.params = o.params || {};
1225 var s = _this.dategrid.selModel.getSelected();
1227 _this.detailgrid.view.el.mask("Select a person");
1231 o.params.person_id = s.data.person_id;
1233 var s = _this.tablegrid.selModel.getSelected();
1235 _this.detailgrid.view.el.mask("Select a table");
1238 o.params.on_table = s.data.on_table;
1240 _this.detailgrid.view.el.unmask();
1242 var act = _this.actionSel.getValue();
1244 o.params.action = act;
1246 var tbl = _this.affectSel.getValue();
1248 o.params.on_table = tbl;
1252 act = _this.dateFrom.getValue();
1254 o.params['query[from]'] = act.format('Y-m-d');
1256 act = _this.dateTo.getValue();
1258 o.params['query[to]'] = act.format('Y-m-d');
1261 o.params['query[day_sum]'] = 1;
1262 o.params._columns = 'on_day,qty,uqty';
1268 sortInfo : { field : 'on_day', direction: 'ASC' },
1273 url : baseURL + '/Roo/Events.php'
1276 xtype: 'JsonReader',
1278 totalProperty : 'total',
1287 'name': 'person_name',
1291 'name': 'event_when',
1293 'dateFormat': 'Y-m-d'
1312 'name': 'person_id',
1320 'name': 'person_id_id',
1324 'name': 'person_id_office_id',
1328 'name': 'person_id_name',
1332 'name': 'person_id_phone',
1336 'name': 'person_id_fax',
1340 'name': 'person_id_email',
1344 'name': 'person_id_company_id',
1348 'name': 'person_id_role',
1352 'name': 'person_id_active',
1356 'name': 'person_id_remarks',
1360 'name': 'person_id_passwd',
1364 'name': 'person_id_owner_id',
1368 'name': 'person_id_lang',
1372 'name': 'person_id_no_reset_sent',
1376 'name': 'person_id_action_type',
1380 'name': 'person_id_project_id',
1384 'name': 'person_id_deleted_by',
1388 'name': 'person_id_deleted_dt',
1395 xtype: 'PagingToolbar',
1399 displayMsg : "Displaying Events{0} - {1} of {2}",
1400 emptyMsg : "No Events found"
1404 xtype: 'ColumnModel',
1406 dataIndex : 'on_day',
1407 header : 'Event when',
1410 renderer : function(v) { return String.format('{0}', v ); }
1413 xtype: 'ColumnModel',
1416 header : '#Affected',
1419 renderer : function(v) { return String.format('{0}', v); }
1422 xtype: 'ColumnModel',
1428 renderer : function(v) { return String.format('{0}', v); }
1435 xtype: 'LayoutRegion',
1441 xtype: 'LayoutRegion',
1445 xtype: 'LayoutRegion',
1448 tabPosition : 'top',
1453 this.layout = this.panel.layout;