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.AdminLogEvents = new Roo.XComponent({
8 part : ["Admin", "LogEvents" ],
9 order : '001-Pman.Tab.AdminLogEvents',
11 parent : 'Pman.Tab.AdminLogs',
12 name : "Admin - Logs - Events",
14 permname : 'Admin.Logs',
23 xtype : 'LayoutRegion',
29 xtype : 'LayoutRegion',
35 xtype : 'BorderLayout',
42 xtype : 'ContentPanel',
45 render : function (_self)
47 _this.viewPanel = _self;
55 xtype : 'RowSelectionModel',
59 afterselectionchange : function (_self)
61 // load detail log in _this.viewPanel;
62 if (!this.getSelected()) {
63 this.viewPanel.setContent("Nothing Selected");
66 var id = this.getSelected().data.id;
67 _this.viewPanel.load( { url : baseURL + "/Admin/EventView/" + id + ".html" });
85 'name': 'person_name',
118 'name': 'person_id_id',
122 'name': 'person_id_office_id',
126 'name': 'person_id_name',
130 'name': 'person_id_phone',
134 'name': 'person_id_fax',
138 'name': 'person_id_email',
142 'name': 'person_id_company_id',
146 'name': 'person_id_role',
150 'name': 'person_id_active',
154 'name': 'person_id_remarks',
158 'name': 'person_id_passwd',
162 'name': 'person_id_owner_id',
166 'name': 'person_id_lang',
170 'name': 'person_id_no_reset_sent',
174 'name': 'person_id_action_type',
178 'name': 'person_id_project_id',
182 'name': 'person_id_deleted_by',
186 'name': 'person_id_deleted_dt',
190 totalProperty : 'total'
194 url : baseURL + '/Roo/Events.php',
202 sortInfo : { field: 'event_when', direction: 'DESC'},
205 beforeload : function (_self, o)
207 if (!Pman.buildCompleted) {
212 if (! _this.personSel) {
215 o.params = o.params || {};
216 o.params.person_id = _this.personSel.getValue();
217 var act = _this.actionSel.getValue();
219 o.params.action = act;
221 var tbl = _this.affectSel.getValue();
223 o.params.on_table = tbl;
225 act = _this.dateFrom.getValue();
227 o.params['query[from]'] = act.format('Y-m-d');
229 act = _this.dateTo.getValue();
231 o.params['query[to]'] = act.format('Y-m-d');
236 act = _this.groupedCombo.getValue();
237 o.params['query[grouped]'] = act;
238 if (o.params['query[grouped]'] == 'gr') {
241 Roo.MessageBox.alert("Error", "Select a table to group results on");
244 // o.params['_columns'] =
245 o.params['_distinct'] = 'on_id';
263 xtype : 'PagingToolbar',
264 emptyMsg : "No Events found",
267 displayMsg : "Displaying Events {0} - {1} of {2}",
270 '|xns' : 'Roo.Toolbar',
271 text : "Download to Excel",
275 click : function (_self, e)
279 'sort' : 'event_when',
283 person_id : _this.personSel.getValue(),
284 'csvTitles[0]' : 'When', 'csvCols[0]' : 'event_when',
285 'csvTitles[1]' : 'Staff', 'csvCols[1]' : 'person_id_name',
286 'csvTitles[2]' : 'Action', 'csvCols[2]' : 'action',
287 'csvTitles[3]' : 'Record ID', 'csvCols[3]' : 'on_id' ,
288 'csvTitles[4]' : 'Record Type', 'csvCols[4]' : 'on_table',
289 'csvTitles[5]' : 'Remarks', 'csvCols[5]' : 'remarks'
292 params.person_id = _this.personSel.getValue();
293 var act = _this.actionSel.getValue();
297 var tbl = _this.affectSel.getValue();
299 params.on_table = tbl;
301 act = _this.dateFrom.getValue();
303 params['query[from]'] = act.format('Y-m-d');
305 act = _this.dateTo.getValue();
307 params['query[to]'] = act.format('Y-m-d');
313 url : baseURL + '/Roo/Events.php',
330 '|xns' : 'Roo.Toolbar',
341 if(typeof(uiConfig.events_person_table) != 'undefined' && uiConfig.events_person_table.length){
345 Roo.log(uiConfig.events_person_table);
346 return ['Person', 'cntct'];
349 xtype : 'SimpleStore',
350 fields : [ 'value' ],
356 triggerAction : 'all',
357 forceSelection : true,
358 selectOnFocus : true,
360 displayField : 'value',
361 emptyText : "Select Person Table",
364 valueField : 'value',
372 name : 'person_table',
373 qtip : "Select Person Table",
374 tpl : '<div class=\"x-grid-cell-text x-btn button\"><b>{value}</b> </div>',
375 loadingText : "Searching...",
377 render : function (_self)
379 _this.tableSel = _self;
381 select : function (combo, record, index)
383 _this.grid.footer.onClick('first');
395 url : baseURL + '/Roo/Person.php',
404 xtype : 'JsonReader',
431 'name': 'company_id',
459 'name': 'no_reset_sent',
463 'name': 'action_type',
467 'name': 'project_id',
471 'name': 'deleted_by',
475 'name': 'deleted_dt',
477 'dateFormat': 'Y-m-d'
480 'name': 'office_id_id',
484 'name': 'office_id_company_id',
488 'name': 'office_id_name',
492 'name': 'office_id_address',
496 'name': 'office_id_phone',
500 'name': 'office_id_fax',
504 'name': 'office_id_email',
508 'name': 'office_id_role',
512 'name': 'company_id_code',
516 'name': 'company_id_name',
520 'name': 'company_id_remarks',
524 'name': 'company_id_owner_id',
528 'name': 'company_id_address',
532 'name': 'company_id_tel',
536 'name': 'company_id_fax',
540 'name': 'company_id_email',
544 'name': 'company_id_id',
548 'name': 'company_id_isOwner',
552 'name': 'company_id_logo_id',
556 'name': 'company_id_background_color',
560 'name': 'company_id_comptype',
564 'name': 'company_id_url',
568 'name': 'company_id_main_office_id',
572 'name': 'company_id_created_by',
576 'name': 'company_id_created_dt',
580 'name': 'company_id_updated_by',
584 'name': 'company_id_updated_dt',
588 'name': 'company_id_passwd',
592 'name': 'company_id_dispatch_port',
596 'name': 'company_id_province',
600 'name': 'company_id_country',
604 'name': 'project_id_id',
608 'name': 'project_id_name',
612 'name': 'project_id_remarks',
616 'name': 'project_id_owner_id',
620 'name': 'project_id_code',
624 'name': 'project_id_active',
628 'name': 'project_id_type',
632 'name': 'project_id_client_id',
636 'name': 'project_id_team_id',
640 'name': 'project_id_file_location',
644 'name': 'project_id_open_date',
648 'name': 'project_id_open_by',
652 'name': 'project_id_close_date',
656 'name': 'project_id_countries',
660 'name': 'project_id_languages',
664 'name': 'project_id_agency_id',
668 'name': 'owner_id_id',
672 'name': 'owner_id_office_id',
676 'name': 'owner_id_name',
680 'name': 'owner_id_phone',
684 'name': 'owner_id_fax',
688 'name': 'owner_id_email',
692 'name': 'owner_id_company_id',
696 'name': 'owner_id_role',
700 'name': 'owner_id_active',
704 'name': 'owner_id_remarks',
708 'name': 'owner_id_passwd',
712 'name': 'owner_id_owner_id',
716 'name': 'owner_id_lang',
720 'name': 'owner_id_no_reset_sent',
724 'name': 'owner_id_action_type',
728 'name': 'owner_id_project_id',
732 'name': 'owner_id_deleted_by',
736 'name': 'owner_id_deleted_dt',
741 totalProperty : 'total'
746 sortInfo : { field : 'name' , direction : 'ASC' },
749 beforeload : function (_self, o)
751 o.params = o.params || {};
752 o.params.company_id = Pman.Login.authUser.company_id;
762 triggerAction : 'all',
763 fieldLabel : 'Person ',
764 forceSelection : true,
765 selectOnFocus : true,
767 displayField : 'name',
768 emptyText : "Select Person ",
777 name : 'person_id_name',
778 qtip : "Select Person ",
779 queryParam : 'query[name]',
780 tpl : '<div class=\"x-grid-cell-text x-btn button\"><b>{name}</b> ({company_id_name}) <{email}> </div>',
781 loadingText : "Searching...",
783 render : function (_self)
785 _this.personSel = _self;
787 select : function (combo, record, index)
789 _this.grid.footer.onClick('first');
802 url : baseURL + '/Roo/Events.php',
811 xtype : 'JsonReader',
818 'name': 'person_name',
822 'name': 'event_when',
824 'dateFormat': 'Y-m-d'
851 'name': 'person_id_id',
855 'name': 'person_id_office_id',
859 'name': 'person_id_name',
863 'name': 'person_id_phone',
867 'name': 'person_id_fax',
871 'name': 'person_id_email',
875 'name': 'person_id_company_id',
879 'name': 'person_id_role',
883 'name': 'person_id_active',
887 'name': 'person_id_remarks',
891 'name': 'person_id_passwd',
895 'name': 'person_id_owner_id',
899 'name': 'person_id_lang',
903 'name': 'person_id_no_reset_sent',
907 'name': 'person_id_action_type',
911 'name': 'person_id_project_id',
915 'name': 'person_id_deleted_by',
919 'name': 'person_id_deleted_dt',
924 totalProperty : 'total'
929 sortInfo : { field : 'action' , direction : 'ASC' },
932 beforeload : function (_self, o)
934 o.params = o.params || {};
935 // staff can see all logs, other companies can only see their own.
936 if (Pman.Login.authUser.company_id_comptype != 'OWNER') {
937 o.params.company_id = Pman.Login.authUser.company_id;
939 o.params._distinct = 'action';
940 o.params._columns ='action';
950 triggerAction : 'all',
951 forceSelection : true,
952 selectOnFocus : true,
954 displayField : 'action',
955 emptyText : "Select Action",
957 valueField : 'action',
965 qtip : "Select Action",
966 queryParam : 'query[action]',
967 tpl : '<div class=\"x-grid-cell-text x-btn button\"><b>{action}</b> </div>',
968 loadingText : "Searching...",
970 render : function (_self)
972 _this.actionSel = _self;
974 select : function (combo, record, index)
976 _this.grid.footer.onClick('first');
988 url : baseURL + '/Roo/Events.php',
997 xtype : 'JsonReader',
1005 'name': 'person_name',
1009 'name': 'event_when',
1011 'dateFormat': 'Y-m-d'
1030 'name': 'person_id',
1038 'name': 'person_id_id',
1042 'name': 'person_id_office_id',
1046 'name': 'person_id_name',
1050 'name': 'person_id_phone',
1054 'name': 'person_id_fax',
1058 'name': 'person_id_email',
1062 'name': 'person_id_company_id',
1066 'name': 'person_id_role',
1070 'name': 'person_id_active',
1074 'name': 'person_id_remarks',
1078 'name': 'person_id_passwd',
1082 'name': 'person_id_owner_id',
1086 'name': 'person_id_lang',
1090 'name': 'person_id_no_reset_sent',
1094 'name': 'person_id_action_type',
1098 'name': 'person_id_project_id',
1102 'name': 'person_id_deleted_by',
1106 'name': 'person_id_deleted_dt',
1110 totalProperty : 'total'
1112 '|xns' : 'Roo.data',
1115 sortInfo : { field : 'on_table' , direction : 'ASC' },
1118 beforeload : function (_self, o)
1120 o.params = o.params || {};
1121 // staff can see all logs, other companies can only see their own.
1122 if (Pman.Login.authUser.company_id_comptype != 'OWNER') {
1123 o.params.company_id = Pman.Login.authUser.company_id;
1125 o.params._distinct = 'on_table';
1126 o.params._columns ='on_table';
1134 '|xns' : 'Roo.form',
1136 triggerAction : 'all',
1137 forceSelection : true,
1138 selectOnFocus : true,
1140 displayField : 'on_table',
1141 emptyText : "Select Affects",
1143 valueField : 'action',
1151 qtip : "Select Action",
1152 queryParam : 'query[on_table]',
1153 tpl : '<div class=\"x-grid-cell-text x-btn button\"><b>{on_table}</b> </div>',
1154 loadingText : "Searching...",
1156 render : function (_self)
1158 _this.affectSel = _self;
1160 select : function (combo, record, index)
1162 _this.grid.footer.onClick('first');
1171 '|xns' : 'Roo.Toolbar',
1172 text : "Date Range",
1177 '|xns' : 'Roo.form',
1179 xtype : 'DateField',
1182 render : function (_self)
1184 _this.dateFrom = _self;
1186 change : function (_self, newValue, oldValue)
1188 _this.grid.footer.onClick('first');
1193 '|xns' : 'Roo.form',
1195 xtype : 'DateField',
1198 render : function (_self)
1200 _this.dateTo = _self;
1202 change : function (_self, newValue, oldValue)
1204 _this.grid.footer.onClick('first');
1211 '|xns' : 'Roo.grid',
1212 autoExpandColumn : 'remarks',
1218 '|xns' : 'Roo.grid',
1219 xtype : 'ColumnModel',
1222 renderer : function(v) { return v ? v.dateFormat('d/m/Y H:i') : ''; },
1224 dataIndex : 'event_when'
1227 '|xns' : 'Roo.grid',
1228 xtype : 'ColumnModel',
1235 '|xns' : 'Roo.grid',
1236 xtype : 'ColumnModel',
1239 renderer : function(v,x,r) {
1241 var efield = typeof(_this.email_field) == 'undefined' ? 'person_id_email' : _this.email_field;
1242 var nfield = typeof(_this.name_field) == 'undefined' ? 'person_id_name' : _this.name_field;
1244 Roo.log([r, efield, nfield]);
1246 var email = r.json[efield]; // ? r.data.person_id_email : r.data.person_id_email;
1247 var name = r.json[nfield]; // ? r.data.person_id_name : r.data.person_id_name;
1248 return String.format('{0} <<a href="mailto:{1}">{1}</a>>',
1254 dataIndex : 'person_id_name'
1257 '|xns' : 'Roo.grid',
1258 xtype : 'ColumnModel',
1261 renderer : function(v) { return String.format('{0}', v); },
1263 dataIndex : 'action'
1266 '|xns' : 'Roo.grid',
1267 xtype : 'ColumnModel',
1270 renderer : function(v) { return String.format('{0}', v); },
1272 dataIndex : 'ipaddr'
1275 '|xns' : 'Roo.grid',
1276 xtype : 'ColumnModel',
1277 header : 'Affected',
1279 renderer : function(v, x, r) {
1280 return v ? String.format('{0}({1})', v, r.data.on_id) : '';
1283 dataIndex : 'on_table'
1286 '|xns' : 'Roo.grid',
1287 xtype : 'ColumnModel',
1290 renderer : function(v) { return String.format('<span qtip="{1}">{0}</span>', v, Roo.util.Format.htmlEncode(v)); },
1292 dataIndex : 'remarks'
1296 render : function() {
1298 //_this.dialog = Pman.Dialog.FILL_IN
1299 if (_this.panel.active) {
1300 this.footer.onClick('first');
1314 xtype : 'GridPanel',
1315 fitContainer : true,
1317 tableName : 'Events',
1319 activate : function() {
1322 _this.grid.footer.onClick('first');
1336 xtype : 'NestedLayoutPanel',