Pman.Tab.AdminLogEvents.bjs
[Pman.Admin] / Pman.Tab.AdminLogEvents.js
1 //<script type="text/javascript">
2
3 // Auto generated file - created by app.Builder.js- do not edit directly (at present!)
4
5 Roo.namespace('Pman.Tab');
6
7 Pman.Tab.AdminLogEvents = new Roo.XComponent({
8
9  _strings : {
10   '231bc72756b5e6de492aaaa1577f61b1' :"Remarks",
11   '2ea72778ebaacc973260c88837dd7a2f' :"Displaying Events  {0} - {1} of {2}",
12   '87f9f735a1d36793ceaecd4e47124b63' :"Events",
13   '1b7f7d24575cdbfadb83b9587fa1bf97' :"#id",
14   'a12a3079e14ced46e69ba52b8a90b21a' :"IP",
15   '1243daf593fa297e07ab03bf06d925af' :"Searching...",
16   '01bd6a16732dfa2b760dc8566c58afae' :"Download to Excel",
17   '498f79c4c5bbde77f1bceb6c86fd0f6d' :"Show",
18   '037fd50b0e85bb65995ca7125d06c7cd' :"Select Person Table",
19   'fd7535ce3979bb8547e2c01689db0767' :"Select Person ",
20   '679308a758de538c5f39c4c6cdba6593' :"Select Affects",
21   '8f7f93630c366dc55aec88eb8e9640d0' :"Staff",
22   'a8929eb5c1553d3f70497f862d25d0ce' :"Select Action",
23   '39b9e051f9fe75e65c7a330bb00499d4' :"Date Range",
24   '4e97aeeaa8b15ca1180fcd1f3ac478d1' :"When",
25   '004bf6c9a40003140292e97330236c53' :"Action",
26   '90e4ac2e5a22e53df63b6b186d8727ba' :"No Events found",
27   '2c92a9a6a5dbf570825e62eabcdecd8d' :"Affected"
28  },
29
30   part     :  ["Admin", "LogEvents" ],
31   order    : '001-Pman.Tab.AdminLogEvents',
32   region   : 'center',
33   parent   : 'Pman.Tab.AdminLogs',
34   name     : "Admin - Logs - Events",
35   disabled : false, 
36   permname : 'Admin.Logs', 
37   _tree : function()
38   {
39    var _this = this;
40    var MODULE = this;
41    return {
42    layout : {
43     center : {
44      '|xns' : 'Roo',
45      xns : Roo,
46      xtype : 'LayoutRegion'
47     },
48     south : {
49      '|xns' : 'Roo',
50      autoScroll : true,
51      height : 150,
52      split : true,
53      xns : Roo,
54      xtype : 'LayoutRegion'
55     },
56     '|xns' : 'Roo',
57     xns : Roo,
58     xtype : 'BorderLayout',
59     items : [
60      {
61       '|xns' : 'Roo',
62       fitToFrame : true,
63       region : 'south',
64       xns : Roo,
65       xtype : 'ContentPanel',
66       listeners : {
67        render : function (_self)
68         {
69           _this.viewPanel = _self;
70         }
71       }
72      },
73      {
74       grid : {
75        sm : {
76         '|xns' : 'Roo.grid',
77         singleSelect : true,
78         xns : Roo.grid,
79         xtype : 'RowSelectionModel',
80         listeners : {
81          afterselectionchange : function (_self)
82           {
83               // load detail log in _this.viewPanel;
84               if (!this.getSelected()) {
85                   this.viewPanel.setContent("Nothing Selected");
86                   return;
87               }
88               var id = this.getSelected().data.id;
89               _this.viewPanel.load( { url : baseURL + "/Admin/EventView/" + id + ".html" });
90               
91           }
92         }
93        },
94        dataSource : {
95         reader : {
96          '|xns' : 'Roo.data',
97          fields : [
98              {
99                  'name': 'id',
100                  'type': 'int'
101              },
102              {
103                  'name': 'person_name',
104                  'type': 'string'
105              },
106              {
107                  'name': 'event_when',
108                  'type': 'date',
109                  'dateFormat': 'Y-m-d'
110              },
111              {
112                  'name': 'action',
113                  'type': 'string'
114              },
115              {
116                  'name': 'ipaddr',
117                  'type': 'string'
118              },
119              {
120                  'name': 'on_id',
121                  'type': 'int'
122              },
123              {
124                  'name': 'on_table',
125                  'type': 'string'
126              },
127              {
128                  'name': 'person_id',
129                  'type': 'int'
130              },
131              {
132                  'name': 'remarks',
133                  'type': 'string'
134              },
135              {
136                  'name': 'person_id_id',
137                  'type': 'int'
138              },
139              {
140                  'name': 'person_id_office_id',
141                  'type': 'int'
142              },
143              {
144                  'name': 'person_id_name',
145                  'type': 'string'
146              },
147              {
148                  'name': 'person_id_phone',
149                  'type': 'string'
150              },
151              {
152                  'name': 'person_id_fax',
153                  'type': 'string'
154              },
155              {
156                  'name': 'person_id_email',
157                  'type': 'string'
158              },
159              {
160                  'name': 'person_id_company_id',
161                  'type': 'int'
162              },
163              {
164                  'name': 'person_id_role',
165                  'type': 'string'
166              },
167              {
168                  'name': 'person_id_active',
169                  'type': 'int'
170              },
171              {
172                  'name': 'person_id_remarks',
173                  'type': 'string'
174              },
175              {
176                  'name': 'person_id_passwd',
177                  'type': 'string'
178              },
179              {
180                  'name': 'person_id_owner_id',
181                  'type': 'int'
182              },
183              {
184                  'name': 'person_id_lang',
185                  'type': 'string'
186              },
187              {
188                  'name': 'person_id_no_reset_sent',
189                  'type': 'int'
190              },
191              {
192                  'name': 'person_id_action_type',
193                  'type': 'string'
194              },
195              {
196                  'name': 'person_id_project_id',
197                  'type': 'int'
198              },
199              {
200                  'name': 'person_id_deleted_by',
201                  'type': 'int'
202              },
203              {
204                  'name': 'person_id_deleted_dt',
205                  'type': 'date'
206              }
207          ],
208          id : 'id',
209          root : 'data',
210          totalProperty : 'total',
211          xns : Roo.data,
212          xtype : 'JsonReader'
213         },
214         proxy : {
215          '|xns' : 'Roo.data',
216          method : 'GET',
217          url : baseURL + '/Roo/Events.php',
218          xns : Roo.data,
219          xtype : 'HttpProxy'
220         },
221         '|xns' : 'Roo.data',
222         remoteSort : true,
223         sortInfo : { field: 'event_when', direction: 'DESC'},
224         xns : Roo.data,
225         xtype : 'Store',
226         listeners : {
227          beforeload : function (_self, o)
228           {
229               if (!Pman.buildCompleted) {
230                   return false;
231               }
232              
233              
234              if (! _this.personSel) {
235               return false;
236               }
237               o.params = o.params || {};
238               o.params.person_id = _this.personSel.getValue();
239               o.params.person_table = _this.tableSel.getValue();
240               var act = _this.actionSel.getValue();
241               if (act.length) {
242                   o.params.action = act;
243               }
244               var tbl = _this.affectSel.getValue();
245               if (tbl.length) {
246                   o.params.on_table = tbl;
247               }
248               act = _this.dateFrom.getValue();
249               if (act.format) {
250                   o.params['query[from]'] = act.format('Y-m-d');
251               }
252               act = _this.dateTo.getValue();
253               if (act.format) {
254                   o.params['query[to]'] = act.format('Y-m-d');
255               }
256            
257               
258               /*
259               act = _this.groupedCombo.getValue();
260               o.params['query[grouped]'] = act;
261               if (o.params['query[grouped]'] == 'gr') {
262               
263                   if (!tbl.length) {
264                       Roo.MessageBox.alert("Error", "Select a table to group results on");
265                       return false;
266                   }
267           //        o.params['_columns']  = 
268                   o.params['_distinct'] = 'on_id';
269                   
270                   
271               }
272               
273               */
274           
275               
276           }
277         },
278         items : [
279
280         ]
281
282        },
283        footer : {
284         '|xns' : 'Roo',
285         displayInfo : true,
286         displayMsg : _this._strings['2ea72778ebaacc973260c88837dd7a2f'],
287         emptyMsg : _this._strings['90e4ac2e5a22e53df63b6b186d8727ba'],
288         pageSize : 25,
289         xns : Roo,
290         xtype : 'PagingToolbar',
291         items : [
292          {
293           '|xns' : 'Roo.Toolbar',
294           text : _this._strings['01bd6a16732dfa2b760dc8566c58afae'],
295           xns : Roo.Toolbar,
296           xtype : 'Button',
297           listeners : {
298            click : function (_self, e)
299             {
300                 
301                 var params = {
302                     'sort' : 'event_when',
303                     'dir' : 'DESC',
304                     'start' : 0,
305                     'limit' : 900,
306                     person_id : _this.personSel.getValue(), 
307                     'csvTitles[0]' : 'When',   'csvCols[0]' : 'event_when', 
308                     'csvTitles[1]' : 'Staff',   'csvCols[1]' : 'person_id_name', 
309                     'csvTitles[2]' : 'Action',   'csvCols[2]' : 'action', 
310                     'csvTitles[3]' : 'Record ID',   'csvCols[3]' : 'on_id'       ,
311                     'csvTitles[4]' : 'Record Type',   'csvCols[4]' : 'on_table',
312                     'csvTitles[5]' : 'Remarks',   'csvCols[5]' : 'remarks'        
313                 }
314                     
315                 params.person_id = _this.personSel.getValue();
316                 var act = _this.actionSel.getValue();
317                 if (act.length) {
318                     params.action = act;
319                 }
320                 var tbl = _this.affectSel.getValue();
321                 if (tbl.length) {
322                     params.on_table = tbl;
323                 }
324                 act = _this.dateFrom.getValue();
325                 if (act.format) {
326                     params['query[from]'] = act.format('Y-m-d');
327                 }
328                 act = _this.dateTo.getValue();
329                 if (act.format) {
330                     params['query[to]'] = act.format('Y-m-d');
331                 }
332                 params.limit = 9999;
333                 
334             
335                 new Pman.download({
336                     url : baseURL + '/Roo/Events.php',
337                     params : params ,
338                     newWindow: true
339                     
340                 });
341             }
342           }
343          }
344         ]
345
346        },
347        toolbar : {
348         '|xns' : 'Roo',
349         xns : Roo,
350         xtype : 'Toolbar',
351         items : [
352          {
353           '|xns' : 'Roo.Toolbar',
354           text : _this._strings['498f79c4c5bbde77f1bceb6c86fd0f6d'],
355           xns : Roo.Toolbar,
356           xtype : 'TextItem'
357          },
358          {
359           store : {
360            '|xns' : 'Roo.data',
361            data : (function() { 
362            
363                if(typeof(uiConfig) == 'undefined' || typeof(uiConfig.events_person_table) == 'undefined' || !uiConfig.events_person_table.length){
364            
365                    return [];        
366                }
367            
368                return uiConfig.events_person_table;
369                
370            })(),
371            fields : [ 'value' ],
372            isLocal : true,
373            xns : Roo.data,
374            xtype : 'SimpleStore'
375           },
376           '|xns' : 'Roo.form',
377           actionMode : 'fieldEl',
378           allowBlank : true,
379           alwaysQuery : true,
380           displayField : 'value',
381           editable : false,
382           emptyText : _this._strings['037fd50b0e85bb65995ca7125d06c7cd'],
383           forceSelection : true,
384           hideMode : 'display',
385           listWidth : 300,
386           loadingText : _this._strings['1243daf593fa297e07ab03bf06d925af'],
387           minChars : 2,
388           name : 'person_table',
389           pageSize : 20,
390           qtip : _this._strings['037fd50b0e85bb65995ca7125d06c7cd'],
391           selectOnFocus : true,
392           tpl : '<div class=\"x-grid-cell-text x-btn button\"><b>{value}</b> </div>',
393           triggerAction : 'all',
394           typeAhead : true,
395           valueField : 'value',
396           width : 150,
397           xns : Roo.form,
398           xtype : 'ComboBox',
399           listeners : {
400            render : function (_self)
401             {
402                 _this.tableSel = _self;
403               
404                 this.el.setVisibilityMode(Roo.Element.DISPLAY);
405                 
406                 if(
407                     typeof(uiConfig) == 'undefined' || 
408                     typeof(uiConfig.events_person_table) == 'undefined' || 
409                     !uiConfig.events_person_table.length
410                 ){
411                     this.el.hide();
412                 }
413             },
414            select : function (combo, record, index)
415             {
416               _this.grid.footer.onClick('first');
417             }
418           },
419           items : [
420
421           ]
422
423          },
424          {
425           store : {
426            proxy : {
427             '|xns' : 'Roo.data',
428             method : 'GET',
429             url : baseURL + '/Roo/Person.php',
430             xns : Roo.data,
431             xtype : 'HttpProxy'
432            },
433            reader : {
434             '|xns' : 'Roo.data',
435             fields : [
436                 {
437                     'name': 'id',
438                     'type': 'int'
439                 },
440                 {
441                     'name': 'office_id',
442                     'type': 'int'
443                 },
444                 {
445                     'name': 'name',
446                     'type': 'string'
447                 },
448                 {
449                     'name': 'phone',
450                     'type': 'string'
451                 },
452                 {
453                     'name': 'fax',
454                     'type': 'string'
455                 },
456                 {
457                     'name': 'email',
458                     'type': 'string'
459                 },
460                 {
461                     'name': 'company_id',
462                     'type': 'int'
463                 },
464                 {
465                     'name': 'role',
466                     'type': 'string'
467                 },
468                 {
469                     'name': 'active',
470                     'type': 'int'
471                 },
472                 {
473                     'name': 'remarks',
474                     'type': 'string'
475                 },
476                 {
477                     'name': 'passwd',
478                     'type': 'string'
479                 },
480                 {
481                     'name': 'owner_id',
482                     'type': 'int'
483                 },
484                 {
485                     'name': 'lang',
486                     'type': 'string'
487                 },
488                 {
489                     'name': 'no_reset_sent',
490                     'type': 'int'
491                 },
492                 {
493                     'name': 'action_type',
494                     'type': 'string'
495                 },
496                 {
497                     'name': 'project_id',
498                     'type': 'int'
499                 },
500                 {
501                     'name': 'deleted_by',
502                     'type': 'int'
503                 },
504                 {
505                     'name': 'deleted_dt',
506                     'type': 'date',
507                     'dateFormat': 'Y-m-d'
508                 },
509                 {
510                     'name': 'office_id_id',
511                     'type': 'int'
512                 },
513                 {
514                     'name': 'office_id_company_id',
515                     'type': 'int'
516                 },
517                 {
518                     'name': 'office_id_name',
519                     'type': 'string'
520                 },
521                 {
522                     'name': 'office_id_address',
523                     'type': 'string'
524                 },
525                 {
526                     'name': 'office_id_phone',
527                     'type': 'string'
528                 },
529                 {
530                     'name': 'office_id_fax',
531                     'type': 'string'
532                 },
533                 {
534                     'name': 'office_id_email',
535                     'type': 'string'
536                 },
537                 {
538                     'name': 'office_id_role',
539                     'type': 'string'
540                 },
541                 {
542                     'name': 'company_id_code',
543                     'type': 'string'
544                 },
545                 {
546                     'name': 'company_id_name',
547                     'type': 'string'
548                 },
549                 {
550                     'name': 'company_id_remarks',
551                     'type': 'string'
552                 },
553                 {
554                     'name': 'company_id_owner_id',
555                     'type': 'int'
556                 },
557                 {
558                     'name': 'company_id_address',
559                     'type': 'string'
560                 },
561                 {
562                     'name': 'company_id_tel',
563                     'type': 'string'
564                 },
565                 {
566                     'name': 'company_id_fax',
567                     'type': 'string'
568                 },
569                 {
570                     'name': 'company_id_email',
571                     'type': 'string'
572                 },
573                 {
574                     'name': 'company_id_id',
575                     'type': 'int'
576                 },
577                 {
578                     'name': 'company_id_isOwner',
579                     'type': 'int'
580                 },
581                 {
582                     'name': 'company_id_logo_id',
583                     'type': 'int'
584                 },
585                 {
586                     'name': 'company_id_background_color',
587                     'type': 'string'
588                 },
589                 {
590                     'name': 'company_id_comptype',
591                     'type': 'string'
592                 },
593                 {
594                     'name': 'company_id_url',
595                     'type': 'string'
596                 },
597                 {
598                     'name': 'company_id_main_office_id',
599                     'type': 'int'
600                 },
601                 {
602                     'name': 'company_id_created_by',
603                     'type': 'int'
604                 },
605                 {
606                     'name': 'company_id_created_dt',
607                     'type': 'date'
608                 },
609                 {
610                     'name': 'company_id_updated_by',
611                     'type': 'int'
612                 },
613                 {
614                     'name': 'company_id_updated_dt',
615                     'type': 'date'
616                 },
617                 {
618                     'name': 'company_id_passwd',
619                     'type': 'string'
620                 },
621                 {
622                     'name': 'company_id_dispatch_port',
623                     'type': 'string'
624                 },
625                 {
626                     'name': 'company_id_province',
627                     'type': 'string'
628                 },
629                 {
630                     'name': 'company_id_country',
631                     'type': 'string'
632                 },
633                 {
634                     'name': 'project_id_id',
635                     'type': 'int'
636                 },
637                 {
638                     'name': 'project_id_name',
639                     'type': 'string'
640                 },
641                 {
642                     'name': 'project_id_remarks',
643                     'type': 'string'
644                 },
645                 {
646                     'name': 'project_id_owner_id',
647                     'type': 'int'
648                 },
649                 {
650                     'name': 'project_id_code',
651                     'type': 'string'
652                 },
653                 {
654                     'name': 'project_id_active',
655                     'type': 'int'
656                 },
657                 {
658                     'name': 'project_id_type',
659                     'type': 'string'
660                 },
661                 {
662                     'name': 'project_id_client_id',
663                     'type': 'int'
664                 },
665                 {
666                     'name': 'project_id_team_id',
667                     'type': 'int'
668                 },
669                 {
670                     'name': 'project_id_file_location',
671                     'type': 'string'
672                 },
673                 {
674                     'name': 'project_id_open_date',
675                     'type': 'date'
676                 },
677                 {
678                     'name': 'project_id_open_by',
679                     'type': 'int'
680                 },
681                 {
682                     'name': 'project_id_close_date',
683                     'type': 'date'
684                 },
685                 {
686                     'name': 'project_id_countries',
687                     'type': 'string'
688                 },
689                 {
690                     'name': 'project_id_languages',
691                     'type': 'string'
692                 },
693                 {
694                     'name': 'project_id_agency_id',
695                     'type': 'int'
696                 },
697                 {
698                     'name': 'owner_id_id',
699                     'type': 'int'
700                 },
701                 {
702                     'name': 'owner_id_office_id',
703                     'type': 'int'
704                 },
705                 {
706                     'name': 'owner_id_name',
707                     'type': 'string'
708                 },
709                 {
710                     'name': 'owner_id_phone',
711                     'type': 'string'
712                 },
713                 {
714                     'name': 'owner_id_fax',
715                     'type': 'string'
716                 },
717                 {
718                     'name': 'owner_id_email',
719                     'type': 'string'
720                 },
721                 {
722                     'name': 'owner_id_company_id',
723                     'type': 'int'
724                 },
725                 {
726                     'name': 'owner_id_role',
727                     'type': 'string'
728                 },
729                 {
730                     'name': 'owner_id_active',
731                     'type': 'int'
732                 },
733                 {
734                     'name': 'owner_id_remarks',
735                     'type': 'string'
736                 },
737                 {
738                     'name': 'owner_id_passwd',
739                     'type': 'string'
740                 },
741                 {
742                     'name': 'owner_id_owner_id',
743                     'type': 'int'
744                 },
745                 {
746                     'name': 'owner_id_lang',
747                     'type': 'string'
748                 },
749                 {
750                     'name': 'owner_id_no_reset_sent',
751                     'type': 'int'
752                 },
753                 {
754                     'name': 'owner_id_action_type',
755                     'type': 'string'
756                 },
757                 {
758                     'name': 'owner_id_project_id',
759                     'type': 'int'
760                 },
761                 {
762                     'name': 'owner_id_deleted_by',
763                     'type': 'int'
764                 },
765                 {
766                     'name': 'owner_id_deleted_dt',
767                     'type': 'date'
768                 }
769             ],
770             id : 'id',
771             root : 'data',
772             totalProperty : 'total',
773             xns : Roo.data,
774             xtype : 'JsonReader'
775            },
776            '|xns' : 'Roo.data',
777            remoteSort : true,
778            sortInfo : { field : 'name' , direction : 'ASC' },
779            xns : Roo.data,
780            xtype : 'Store',
781            listeners : {
782             beforeload : function (_self, o)
783              {
784                  o.params = o.params || {};
785                  o.params.company_id = Pman.Login.authUser.company_id;
786              }
787            },
788            items : [
789
790            ]
791
792           },
793           '|xns' : 'Roo.form',
794           allowBlank : true,
795           displayField : 'name',
796           editable : true,
797           emptyText : _this._strings['fd7535ce3979bb8547e2c01689db0767'],
798           fieldLabel : 'Person ',
799           forceSelection : true,
800           listWidth : 600,
801           loadingText : _this._strings['1243daf593fa297e07ab03bf06d925af'],
802           minChars : 2,
803           name : 'person_id_name',
804           pageSize : 20,
805           qtip : _this._strings['fd7535ce3979bb8547e2c01689db0767'],
806           queryParam : 'query[name]',
807           selectOnFocus : true,
808           tpl : '<div class=\"x-grid-cell-text x-btn button\"><b>{name}</b> ({company_id_name}) &lt;{email}&gt; </div>',
809           triggerAction : 'all',
810           typeAhead : true,
811           valueField : 'id',
812           width : 150,
813           xns : Roo.form,
814           xtype : 'ComboBox',
815           listeners : {
816            render : function (_self)
817             {
818               _this.personSel = _self;
819             },
820            select : function (combo, record, index)
821             {
822               _this.grid.footer.onClick('first');
823               
824             }
825           },
826           items : [
827
828           ]
829
830          },
831          {
832           store : {
833            proxy : {
834             '|xns' : 'Roo.data',
835             method : 'GET',
836             url : baseURL + '/Roo/Events.php',
837             xns : Roo.data,
838             xtype : 'HttpProxy'
839            },
840            reader : {
841             '|xns' : 'Roo.data',
842             fields : [
843                 {
844                     'name': 'id',
845                     'type': 'int'
846                 },
847                 {
848                     'name': 'person_name',
849                     'type': 'string'
850                 },
851                 {
852                     'name': 'event_when',
853                     'type': 'date',
854                     'dateFormat': 'Y-m-d'
855                 },
856                 {
857                     'name': 'action',
858                     'type': 'string'
859                 },
860                 {
861                     'name': 'ipaddr',
862                     'type': 'string'
863                 },
864                 {
865                     'name': 'on_id',
866                     'type': 'int'
867                 },
868                 {
869                     'name': 'on_table',
870                     'type': 'string'
871                 },
872                 {
873                     'name': 'person_id',
874                     'type': 'int'
875                 },
876                 {
877                     'name': 'remarks',
878                     'type': 'string'
879                 },
880                 {
881                     'name': 'person_id_id',
882                     'type': 'int'
883                 },
884                 {
885                     'name': 'person_id_office_id',
886                     'type': 'int'
887                 },
888                 {
889                     'name': 'person_id_name',
890                     'type': 'string'
891                 },
892                 {
893                     'name': 'person_id_phone',
894                     'type': 'string'
895                 },
896                 {
897                     'name': 'person_id_fax',
898                     'type': 'string'
899                 },
900                 {
901                     'name': 'person_id_email',
902                     'type': 'string'
903                 },
904                 {
905                     'name': 'person_id_company_id',
906                     'type': 'int'
907                 },
908                 {
909                     'name': 'person_id_role',
910                     'type': 'string'
911                 },
912                 {
913                     'name': 'person_id_active',
914                     'type': 'int'
915                 },
916                 {
917                     'name': 'person_id_remarks',
918                     'type': 'string'
919                 },
920                 {
921                     'name': 'person_id_passwd',
922                     'type': 'string'
923                 },
924                 {
925                     'name': 'person_id_owner_id',
926                     'type': 'int'
927                 },
928                 {
929                     'name': 'person_id_lang',
930                     'type': 'string'
931                 },
932                 {
933                     'name': 'person_id_no_reset_sent',
934                     'type': 'int'
935                 },
936                 {
937                     'name': 'person_id_action_type',
938                     'type': 'string'
939                 },
940                 {
941                     'name': 'person_id_project_id',
942                     'type': 'int'
943                 },
944                 {
945                     'name': 'person_id_deleted_by',
946                     'type': 'int'
947                 },
948                 {
949                     'name': 'person_id_deleted_dt',
950                     'type': 'date'
951                 }
952             ],
953             id : 'id',
954             root : 'data',
955             totalProperty : 'total',
956             xns : Roo.data,
957             xtype : 'JsonReader'
958            },
959            '|xns' : 'Roo.data',
960            remoteSort : true,
961            sortInfo : { field : 'action' , direction : 'ASC' },
962            xns : Roo.data,
963            xtype : 'Store',
964            listeners : {
965             beforeload : function (_self, o)
966              {
967                  o.params = o.params || {};
968                  // staff can see all logs, other companies can only see their own.
969                  if (Pman.Login.authUser.company_id_comptype != 'OWNER') {
970                      o.params.company_id = Pman.Login.authUser.company_id;
971                  }
972                  o.params._distinct = 'action';
973                  o.params._columns ='action';
974              }
975            },
976            items : [
977
978            ]
979
980           },
981           '|xns' : 'Roo.form',
982           allowBlank : true,
983           displayField : 'action',
984           editable : true,
985           emptyText : _this._strings['a8929eb5c1553d3f70497f862d25d0ce'],
986           forceSelection : true,
987           listWidth : 300,
988           loadingText : _this._strings['1243daf593fa297e07ab03bf06d925af'],
989           minChars : 2,
990           name : 'action',
991           pageSize : 20,
992           qtip : _this._strings['a8929eb5c1553d3f70497f862d25d0ce'],
993           queryParam : 'query[action]',
994           selectOnFocus : true,
995           tpl : '<div class=\"x-grid-cell-text x-btn button\"><b>{action}</b> </div>',
996           triggerAction : 'all',
997           typeAhead : true,
998           valueField : 'action',
999           width : 150,
1000           xns : Roo.form,
1001           xtype : 'ComboBox',
1002           listeners : {
1003            render : function (_self)
1004             {
1005               _this.actionSel = _self;
1006             },
1007            select : function (combo, record, index)
1008             {
1009               _this.grid.footer.onClick('first');
1010             }
1011           },
1012           items : [
1013
1014           ]
1015
1016          },
1017          {
1018           store : {
1019            proxy : {
1020             '|xns' : 'Roo.data',
1021             method : 'GET',
1022             url : baseURL + '/Roo/Events.php',
1023             xns : Roo.data,
1024             xtype : 'HttpProxy'
1025            },
1026            reader : {
1027             '|xns' : 'Roo.data',
1028             fields : [
1029                 {
1030                     'name': 'id',
1031                     'type': 'int'
1032                 },
1033                 {
1034                     'name': 'person_name',
1035                     'type': 'string'
1036                 },
1037                 {
1038                     'name': 'event_when',
1039                     'type': 'date',
1040                     'dateFormat': 'Y-m-d'
1041                 },
1042                 {
1043                     'name': 'action',
1044                     'type': 'string'
1045                 },
1046                 {
1047                     'name': 'ipaddr',
1048                     'type': 'string'
1049                 },
1050                 {
1051                     'name': 'on_id',
1052                     'type': 'int'
1053                 },
1054                 {
1055                     'name': 'on_table',
1056                     'type': 'string'
1057                 },
1058                 {
1059                     'name': 'person_id',
1060                     'type': 'int'
1061                 },
1062                 {
1063                     'name': 'remarks',
1064                     'type': 'string'
1065                 },
1066                 {
1067                     'name': 'person_id_id',
1068                     'type': 'int'
1069                 },
1070                 {
1071                     'name': 'person_id_office_id',
1072                     'type': 'int'
1073                 },
1074                 {
1075                     'name': 'person_id_name',
1076                     'type': 'string'
1077                 },
1078                 {
1079                     'name': 'person_id_phone',
1080                     'type': 'string'
1081                 },
1082                 {
1083                     'name': 'person_id_fax',
1084                     'type': 'string'
1085                 },
1086                 {
1087                     'name': 'person_id_email',
1088                     'type': 'string'
1089                 },
1090                 {
1091                     'name': 'person_id_company_id',
1092                     'type': 'int'
1093                 },
1094                 {
1095                     'name': 'person_id_role',
1096                     'type': 'string'
1097                 },
1098                 {
1099                     'name': 'person_id_active',
1100                     'type': 'int'
1101                 },
1102                 {
1103                     'name': 'person_id_remarks',
1104                     'type': 'string'
1105                 },
1106                 {
1107                     'name': 'person_id_passwd',
1108                     'type': 'string'
1109                 },
1110                 {
1111                     'name': 'person_id_owner_id',
1112                     'type': 'int'
1113                 },
1114                 {
1115                     'name': 'person_id_lang',
1116                     'type': 'string'
1117                 },
1118                 {
1119                     'name': 'person_id_no_reset_sent',
1120                     'type': 'int'
1121                 },
1122                 {
1123                     'name': 'person_id_action_type',
1124                     'type': 'string'
1125                 },
1126                 {
1127                     'name': 'person_id_project_id',
1128                     'type': 'int'
1129                 },
1130                 {
1131                     'name': 'person_id_deleted_by',
1132                     'type': 'int'
1133                 },
1134                 {
1135                     'name': 'person_id_deleted_dt',
1136                     'type': 'date'
1137                 }
1138             ],
1139             id : 'id',
1140             root : 'data',
1141             totalProperty : 'total',
1142             xns : Roo.data,
1143             xtype : 'JsonReader'
1144            },
1145            '|xns' : 'Roo.data',
1146            remoteSort : true,
1147            sortInfo : { field : 'on_table' , direction : 'ASC' },
1148            xns : Roo.data,
1149            xtype : 'Store',
1150            listeners : {
1151             beforeload : function (_self, o)
1152              {
1153                  o.params = o.params || {};
1154                  // staff can see all logs, other companies can only see their own.
1155                  if (Pman.Login.authUser.company_id_comptype != 'OWNER') {
1156                      o.params.company_id = Pman.Login.authUser.company_id;
1157                  }
1158                  o.params._distinct = 'on_table';
1159                  o.params._columns ='on_table';
1160              }
1161            },
1162            items : [
1163
1164            ]
1165
1166           },
1167           '|xns' : 'Roo.form',
1168           allowBlank : true,
1169           displayField : 'on_table',
1170           editable : true,
1171           emptyText : _this._strings['679308a758de538c5f39c4c6cdba6593'],
1172           forceSelection : true,
1173           listWidth : 300,
1174           loadingText : _this._strings['1243daf593fa297e07ab03bf06d925af'],
1175           minChars : 2,
1176           name : 'on_table',
1177           pageSize : 20,
1178           qtip : _this._strings['a8929eb5c1553d3f70497f862d25d0ce'],
1179           queryParam : 'query[on_table]',
1180           selectOnFocus : true,
1181           tpl : '<div class=\"x-grid-cell-text x-btn button\"><b>{on_table}</b> </div>',
1182           triggerAction : 'all',
1183           typeAhead : true,
1184           valueField : 'action',
1185           width : 150,
1186           xns : Roo.form,
1187           xtype : 'ComboBox',
1188           listeners : {
1189            render : function (_self)
1190             {
1191               _this.affectSel = _self;
1192             },
1193            select : function (combo, record, index)
1194             {
1195               _this.grid.footer.onClick('first');
1196             }
1197           },
1198           items : [
1199
1200           ]
1201
1202          },
1203          {
1204           '|xns' : 'Roo.Toolbar',
1205           text : _this._strings['39b9e051f9fe75e65c7a330bb00499d4'],
1206           xns : Roo.Toolbar,
1207           xtype : 'TextItem'
1208          },
1209          {
1210           '|xns' : 'Roo.form',
1211           format : 'Y-m-d',
1212           xns : Roo.form,
1213           xtype : 'DateField',
1214           listeners : {
1215            change : function (_self, newValue, oldValue)
1216             {
1217               _this.grid.footer.onClick('first');
1218             },
1219            render : function (_self)
1220             {
1221               _this.dateFrom = _self;
1222             }
1223           }
1224          },
1225          {
1226           '|xns' : 'Roo.form',
1227           format : 'Y-m-d',
1228           xns : Roo.form,
1229           xtype : 'DateField',
1230           listeners : {
1231            change : function (_self, newValue, oldValue)
1232             {
1233               _this.grid.footer.onClick('first');
1234             },
1235            render : function (_self)
1236             {
1237               _this.dateTo = _self;
1238             }
1239           }
1240          }
1241         ]
1242
1243        },
1244        '|xns' : 'Roo.grid',
1245        autoExpandColumn : 'remarks',
1246        loadMask : true,
1247        xns : Roo.grid,
1248        xtype : 'Grid',
1249        colModel : [
1250          {
1251           '|xns' : 'Roo.grid',
1252           dataIndex : 'event_when',
1253           header : _this._strings['4e97aeeaa8b15ca1180fcd1f3ac478d1'],
1254           renderer : function(v) { return v ? v.dateFormat('d/m/Y H:i') : ''; },
1255           width : 100,
1256           xns : Roo.grid,
1257           xtype : 'ColumnModel'
1258          },
1259 {
1260           '|xns' : 'Roo.grid',
1261           dataIndex : 'id',
1262           header : _this._strings['1b7f7d24575cdbfadb83b9587fa1bf97'],
1263           width : 100,
1264           xns : Roo.grid,
1265           xtype : 'ColumnModel'
1266          },
1267 {
1268           '|xns' : 'Roo.grid',
1269           dataIndex : 'person_id_name',
1270           header : _this._strings['8f7f93630c366dc55aec88eb8e9640d0'],
1271           renderer : function(v,x,r) { 
1272               
1273               var efield = typeof(_this.email_field) == 'undefined' ? 'person_id_email' : _this.email_field;
1274               var nfield = typeof(_this.name_field) == 'undefined' ? 'person_id_name' : _this.name_field;    
1275               
1276               //Roo.log([r, efield, nfield]);
1277               
1278               var email = r.json[efield]; // ? r.data.person_id_email : r.data.person_id_email;
1279               var name  = r.json[nfield]; // ? r.data.person_id_name : r.data.person_id_name;    
1280               return String.format('{0} &lt;<a href="mailto:{1}">{1}</a>&gt;', 
1281                   name, email); 
1282           
1283           
1284           },
1285           width : 150,
1286           xns : Roo.grid,
1287           xtype : 'ColumnModel'
1288          },
1289 {
1290           '|xns' : 'Roo.grid',
1291           dataIndex : 'action',
1292           header : _this._strings['004bf6c9a40003140292e97330236c53'],
1293           renderer : function(v) { return String.format('{0}', v); },
1294           width : 100,
1295           xns : Roo.grid,
1296           xtype : 'ColumnModel'
1297          },
1298 {
1299           '|xns' : 'Roo.grid',
1300           dataIndex : 'ipaddr',
1301           header : _this._strings['a12a3079e14ced46e69ba52b8a90b21a'],
1302           renderer : function(v) { return String.format('{0}', v); },
1303           width : 100,
1304           xns : Roo.grid,
1305           xtype : 'ColumnModel'
1306          },
1307 {
1308           '|xns' : 'Roo.grid',
1309           dataIndex : 'on_table',
1310           header : _this._strings['2c92a9a6a5dbf570825e62eabcdecd8d'],
1311           renderer : function(v, x, r) {                     
1312                       return v ? String.format('{0}({1})', v,  r.data.on_id)  : '';  
1313              },
1314           width : 100,
1315           xns : Roo.grid,
1316           xtype : 'ColumnModel'
1317          },
1318 {
1319           '|xns' : 'Roo.grid',
1320           dataIndex : 'remarks',
1321           header : _this._strings['231bc72756b5e6de492aaaa1577f61b1'],
1322           renderer : function(v) { return String.format('<span qtip="{1}">{0}</span>', v, Roo.util.Format.htmlEncode(v)); },
1323           width : 300,
1324           xns : Roo.grid,
1325           xtype : 'ColumnModel'
1326          }
1327        ],
1328        listeners : {
1329         render : function() { 
1330              _this.grid = this; 
1331              //_this.dialog = Pman.Dialog.FILL_IN
1332              if (_this.panel.active) {
1333                 this.footer.onClick('first');
1334              }
1335          }
1336        },
1337        items : [
1338
1339        ]
1340
1341       },
1342       '|xns' : 'Roo',
1343       background : false,
1344       fitContainer : true,
1345       fitToframe : true,
1346       region : 'center',
1347       tableName : 'Events',
1348       title : _this._strings['87f9f735a1d36793ceaecd4e47124b63'],
1349       xns : Roo,
1350       xtype : 'GridPanel',
1351       listeners : {
1352        activate : function() {
1353             _this.panel = this;
1354             if (_this.grid) {
1355                 _this.grid.footer.onClick('first');
1356             }
1357         }
1358       },
1359       items : [
1360
1361       ]
1362
1363      }
1364     ]
1365
1366    },
1367    '|xns' : 'Roo',
1368    region : 'center',
1369    title : _this._strings['87f9f735a1d36793ceaecd4e47124b63'],
1370    xns : Roo,
1371    xtype : 'NestedLayoutPanel',
1372    items : [
1373
1374    ]
1375
1376   };  }
1377 });