Pman.Tab.BAdminLogEvents.bjs
[Pman.BAdmin] / Pman.Tab.BAdminLogEvents.bjs
1 {
2  "name" : "Pman.Tab.BAdminLogEvents",
3  "parent" : "Pman.Tab.BAdminLogs",
4  "title" : "Pman.Tab.BAdminLogEvents",
5  "path" : "/home/edward/gitlive/Pman.BAdmin/Pman.Tab.BAdminLogEvents.bjs",
6  "permname" : "",
7  "modOrder" : "001",
8  "strings" : {
9   "90275c90e270853fee34db3b87d24d7c" : "Date Range <i class=\"fa fa-calendar\" aria-hidden=\"true\"></i>",
10   "231bc72756b5e6de492aaaa1577f61b1" : "Remarks",
11   "87f9f735a1d36793ceaecd4e47124b63" : "Events",
12   "87557f11575c0ad78e4e28abedc13b6e" : "End",
13   "1b7f7d24575cdbfadb83b9587fa1bf97" : "#id",
14   "098f6bcd4621d373cade4e832627b4f6" : "test",
15   "10927a67903afd162cc29267d434a2bb" : "select action",
16   "c759559b750d502a5be8dceae85ed841" : "select affected",
17   "fc6f97505d89fe9277965c126744647a" : "No Companies found",
18   "06bff0cfe47afca536033ab51f4e2cdc" : "Log View",
19   "a12a3079e14ced46e69ba52b8a90b21a" : "IP",
20   "a3ec0cd6d6acd83df3e2095c5edcf8b5" : "Log Grid",
21   "155ca6a755e25c15ad7ce45e2f638f10" : "Displaying Companies{0} - {1} of {2}",
22   "4e97aeeaa8b15ca1180fcd1f3ac478d1" : "When",
23   "40bed7cf9b3d4bb3a3d7a7e3eb18c5eb" : "Person",
24   "004bf6c9a40003140292e97330236c53" : "Action",
25   "a6122a65eaa676f700ae68d393054a37" : "Start",
26   "e09692a588440a717f79563aed7ac7e5" : "select person",
27   "31c03fdb82204f0ac1fe916b2c713c8c" : "Show <i class=\"fa fa-search\" aria-hidden=\"true\"></i>",
28   "2c92a9a6a5dbf570825e62eabcdecd8d" : "Affected"
29  },
30  "items" : [
31   {
32    "xtype" : "Nest",
33    "$ xns" : "Roo.bootstrap.panel",
34    "String title" : "Events",
35    "items" : [
36     {
37      "xtype" : "Border",
38      "$ xns" : "Roo.bootstrap.layout",
39      "* prop" : "layout",
40      "items" : [
41       {
42        "String tabPosition" : "top",
43        "Boolean hideTabs" : true,
44        "xtype" : "Region",
45        "$ xns" : "Roo.bootstrap.layout",
46        "* prop" : "center"
47       },
48       {
49        "String tabPosition" : "top",
50        "Boolean hideTabs" : true,
51        "xtype" : "Region",
52        "Number height" : 150,
53        "$ xns" : "Roo.bootstrap.layout",
54        "Boolean autoScroll" : true,
55        "* prop" : "south",
56        "Boolean split" : true
57       },
58       {
59        "listeners" : {
60         "render" : "function (_self)\n{\n  _this.viewPanel = _self;\n}"
61        },
62        "xtype" : "Content",
63        "Boolean fitToFrame" : true,
64        "$ xns" : "Roo.bootstrap.panel",
65        "String region" : "south",
66        "String title" : "Log View"
67       },
68       {
69        "listeners" : {
70         "activate" : "function (_self)\n{\n    \n    if (_this.table) {\n        \n        _this.table.footer.onClick('first');\n        \n    }\n    \n}",
71         "render" : "function (_self)\n{\n    _this.grid = _self;\n}"
72        },
73        "xtype" : "Grid",
74        "Boolean fitToFrame" : true,
75        "$ xns" : "Roo.bootstrap.panel",
76        "String region" : "center",
77        "String title" : "Log Grid",
78        "Boolean closable" : false,
79        "items" : [
80         {
81          "xtype" : "NavSimplebar",
82          "$ xns" : "Roo.bootstrap",
83          "* prop" : "toolbar",
84          "items" : [
85           {
86            "xtype" : "NavGroup",
87            "$ xns" : "Roo.bootstrap",
88            "items" : [
89             {
90              "xtype" : "NavItem",
91              "$ xns" : "Roo.bootstrap",
92              "items" : [
93               {
94                "xtype" : "Element",
95                "$ xns" : "Roo.bootstrap",
96                "items" : [
97                 {
98                  "String cls" : "roo-toolbar",
99                  "xtype" : "Row",
100                  "$ xns" : "Roo.bootstrap",
101                  "items" : [
102                   {
103                    "Number md" : 1,
104                    "xtype" : "Column",
105                    "$ xns" : "Roo.bootstrap",
106                    "items" : [
107                     {
108                      "String cls" : "roo-toolbar-label",
109                      "xtype" : "FieldLabel",
110                      "$ xns" : "Roo.bootstrap",
111                      "String html" : "Show <i class=\"fa fa-search\" aria-hidden=\"true\"></i>"
112                     }
113                    ]
114                   },
115                   {
116                    "Number md" : 2,
117                    "xtype" : "Column",
118                    "$ xns" : "Roo.bootstrap",
119                    "items" : [
120                     {
121                      "listeners" : {
122                       "render" : "function (_self)\n{\n    _this.personSel = this;\n    \n}",
123                       "select" : "function (combo, record, index)\n{\n    _this.table.footer.onClick('first');\n}"
124                      },
125                      "Boolean allowBlank" : true,
126                      "String loadingText" : "test",
127                      "String valueField" : "id",
128                      "Boolean typeAhead" : true,
129                      "Boolean removable" : true,
130                      "xtype" : "ComboBox",
131                      "Boolean editable" : false,
132                      "String triggerAction" : "all",
133                      "Boolean alwaysQuery" : false,
134                      "string placeholder" : "select person",
135                      "Number listWidth" : 300,
136                      "$ xns" : "Roo.bootstrap",
137                      "Boolean multiple" : false,
138                      "String displayField" : "name",
139                      "Boolean forceSelection" : true,
140                      "items" : [
141                       {
142                        "listeners" : {
143                         "beforeload" : "function (_self, o)\n{\n    o.params = o.params || {};\n}"
144                        },
145                        "$ Object sortInfo" : "{field : 'name' , direction : 'ASC'}",
146                        "xtype" : "Store",
147                        "boolean remoteSort" : true,
148                        "$ xns" : "Roo.data",
149                        "* prop" : "store",
150                        "items" : [
151                         {
152                          "xtype" : "HttpProxy",
153                          "$ xns" : "Roo.data",
154                          "String method" : "GET",
155                          "* prop" : "proxy",
156                          "$ String url" : "baseURL+'/Roo/Core_person'"
157                         },
158                         {
159                          "$ Array fields" : "[\n    {\n        'name': 'id',\n        'type': 'int'\n    },\n    {\n        'name': 'office_id',\n        'type': 'int'\n    },\n    {\n        'name': 'name',\n        'type': 'string'\n    },\n    {\n        'name': 'phone',\n        'type': 'string'\n    },\n    {\n        'name': 'fax',\n        'type': 'string'\n    },\n    {\n        'name': 'email',\n        'type': 'string'\n    },\n    {\n        'name': 'company_id',\n        'type': 'int'\n    },\n    {\n        'name': 'role',\n        'type': 'string'\n    },\n    {\n        'name': 'active',\n        'type': 'int'\n    },\n    {\n        'name': 'remarks',\n        'type': 'string'\n    },\n    {\n        'name': 'passwd',\n        'type': 'string'\n    },\n    {\n        'name': 'owner_id',\n        'type': 'int'\n    },\n    {\n        'name': 'lang',\n        'type': 'string'\n    },\n    {\n        'name': 'no_reset_sent',\n        'type': 'int'\n    },\n    {\n        'name': 'action_type',\n        'type': 'string'\n    },\n    {\n        'name': 'project_id',\n        'type': 'int'\n    },\n    {\n        'name': 'deleted_by',\n        'type': 'int'\n    },\n    {\n        'name': 'deleted_dt',\n        'type': 'date',\n        'dateFormat': 'Y-m-d'\n    },\n    {\n        'name': 'office_id_id',\n        'type': 'int'\n    },\n    {\n        'name': 'office_id_company_id',\n        'type': 'int'\n    },\n    {\n        'name': 'office_id_name',\n        'type': 'string'\n    },\n    {\n        'name': 'office_id_address',\n        'type': 'string'\n    },\n    {\n        'name': 'office_id_phone',\n        'type': 'string'\n    },\n    {\n        'name': 'office_id_fax',\n        'type': 'string'\n    },\n    {\n        'name': 'office_id_email',\n        'type': 'string'\n    },\n    {\n        'name': 'office_id_role',\n        'type': 'string'\n    },\n    {\n        'name': 'company_id_code',\n        'type': 'string'\n    },\n    {\n        'name': 'company_id_name',\n        'type': 'string'\n    },\n    {\n        'name': 'company_id_remarks',\n        'type': 'string'\n    },\n    {\n        'name': 'company_id_owner_id',\n        'type': 'int'\n    },\n    {\n        'name': 'company_id_address',\n        'type': 'string'\n    },\n    {\n        'name': 'company_id_tel',\n        'type': 'string'\n    },\n    {\n        'name': 'company_id_fax',\n        'type': 'string'\n    },\n    {\n        'name': 'company_id_email',\n        'type': 'string'\n    },\n    {\n        'name': 'company_id_id',\n        'type': 'int'\n    },\n    {\n        'name': 'company_id_isOwner',\n        'type': 'int'\n    },\n    {\n        'name': 'company_id_logo_id',\n        'type': 'int'\n    },\n    {\n        'name': 'company_id_background_color',\n        'type': 'string'\n    },\n    {\n        'name': 'company_id_comptype',\n        'type': 'string'\n    },\n    {\n        'name': 'company_id_url',\n        'type': 'string'\n    },\n    {\n        'name': 'company_id_main_office_id',\n        'type': 'int'\n    },\n    {\n        'name': 'company_id_created_by',\n        'type': 'int'\n    },\n    {\n        'name': 'company_id_created_dt',\n        'type': 'date'\n    },\n    {\n        'name': 'company_id_updated_by',\n        'type': 'int'\n    },\n    {\n        'name': 'company_id_updated_dt',\n        'type': 'date'\n    },\n    {\n        'name': 'company_id_passwd',\n        'type': 'string'\n    },\n    {\n        'name': 'company_id_dispatch_port',\n        'type': 'string'\n    },\n    {\n        'name': 'company_id_province',\n        'type': 'string'\n    },\n    {\n        'name': 'company_id_country',\n        'type': 'string'\n    },\n    {\n        'name': 'project_id_id',\n        'type': 'int'\n    },\n    {\n        'name': 'project_id_name',\n        'type': 'string'\n    },\n    {\n        'name': 'project_id_remarks',\n        'type': 'string'\n    },\n    {\n        'name': 'project_id_owner_id',\n        'type': 'int'\n    },\n    {\n        'name': 'project_id_code',\n        'type': 'string'\n    },\n    {\n        'name': 'project_id_active',\n        'type': 'int'\n    },\n    {\n        'name': 'project_id_type',\n        'type': 'string'\n    },\n    {\n        'name': 'project_id_client_id',\n        'type': 'int'\n    },\n    {\n        'name': 'project_id_team_id',\n        'type': 'int'\n    },\n    {\n        'name': 'project_id_file_location',\n        'type': 'string'\n    },\n    {\n        'name': 'project_id_open_date',\n        'type': 'date'\n    },\n    {\n        'name': 'project_id_open_by',\n        'type': 'int'\n    },\n    {\n        'name': 'project_id_close_date',\n        'type': 'date'\n    },\n    {\n        'name': 'project_id_countries',\n        'type': 'string'\n    },\n    {\n        'name': 'project_id_languages',\n        'type': 'string'\n    },\n    {\n        'name': 'project_id_agency_id',\n        'type': 'int'\n    },\n    {\n        'name': 'owner_id_id',\n        'type': 'int'\n    },\n    {\n        'name': 'owner_id_office_id',\n        'type': 'int'\n    },\n    {\n        'name': 'owner_id_name',\n        'type': 'string'\n    },\n    {\n        'name': 'owner_id_phone',\n        'type': 'string'\n    },\n    {\n        'name': 'owner_id_fax',\n        'type': 'string'\n    },\n    {\n        'name': 'owner_id_email',\n        'type': 'string'\n    },\n    {\n        'name': 'owner_id_company_id',\n        'type': 'int'\n    },\n    {\n        'name': 'owner_id_role',\n        'type': 'string'\n    },\n    {\n        'name': 'owner_id_active',\n        'type': 'int'\n    },\n    {\n        'name': 'owner_id_remarks',\n        'type': 'string'\n    },\n    {\n        'name': 'owner_id_passwd',\n        'type': 'string'\n    },\n    {\n        'name': 'owner_id_owner_id',\n        'type': 'int'\n    },\n    {\n        'name': 'owner_id_lang',\n        'type': 'string'\n    },\n    {\n        'name': 'owner_id_no_reset_sent',\n        'type': 'int'\n    },\n    {\n        'name': 'owner_id_action_type',\n        'type': 'string'\n    },\n    {\n        'name': 'owner_id_project_id',\n        'type': 'int'\n    },\n    {\n        'name': 'owner_id_deleted_by',\n        'type': 'int'\n    },\n    {\n        'name': 'owner_id_deleted_dt',\n        'type': 'date'\n    }\n]",
160                          "xtype" : "JsonReader",
161                          "$ xns" : "Roo.data",
162                          "* prop" : "reader"
163                         }
164                        ]
165                       }
166                      ]
167                     }
168                    ]
169                   },
170                   {
171                    "Number md" : 2,
172                    "xtype" : "Column",
173                    "$ xns" : "Roo.bootstrap",
174                    "items" : [
175                     {
176                      "listeners" : {
177                       "render" : "function (_self)\n{\n    _this.actionSel = this;\n}",
178                       "select" : "function (combo, record, index)\n{\n    _this.table.footer.onClick('first');\n}"
179                      },
180                      "Boolean allowBlank" : true,
181                      "String valueField" : "id",
182                      "Boolean typeAhead" : true,
183                      "Boolean removable" : true,
184                      "xtype" : "ComboBox",
185                      "Boolean editable" : false,
186                      "String triggerAction" : "all",
187                      "Boolean alwaysQuery" : false,
188                      "string placeholder" : "select action",
189                      "Number listWidth" : 300,
190                      "$ xns" : "Roo.bootstrap",
191                      "Boolean multiple" : false,
192                      "String displayField" : "action",
193                      "Boolean forceSelection" : true,
194                      "items" : [
195                       {
196                        "listeners" : {
197                         "beforeload" : "function (_self, o)\n{\n    o.params = o.params || {};\n    \n    /*\n    // staff can see all logs, other companies can only see their own.\n    if (Pman.Login.authUser.company_id_comptype != 'OWNER') {\n        o.params.company_id = Pman.Login.authUser.company_id;\n    }\n    */\n    \n    o.params._distinct = 'action';\n    \n    o.params._columns ='action';\n}"
198                        },
199                        "$ Object sortInfo" : "{ field : 'action' , direction : 'ASC' }",
200                        "xtype" : "Store",
201                        "boolean remoteSort" : true,
202                        "$ xns" : "Roo.data",
203                        "* prop" : "store",
204                        "items" : [
205                         {
206                          "xtype" : "HttpProxy",
207                          "$ xns" : "Roo.data",
208                          "String method" : "GET",
209                          "* prop" : "proxy",
210                          "$ String url" : "baseURL + '/Roo/Events'"
211                         },
212                         {
213                          "$ Array fields" : "[\n    {\n        'name': 'id',\n        'type': 'int'\n    },\n    {\n        'name': 'person_name',\n        'type': 'string'\n    },\n    {\n        'name': 'event_when',\n        'type': 'date',\n        'dateFormat': 'Y-m-d'\n    },\n    {\n        'name': 'action',\n        'type': 'string'\n    },\n    {\n        'name': 'ipaddr',\n        'type': 'string'\n    },\n    {\n        'name': 'on_id',\n        'type': 'int'\n    },\n    {\n        'name': 'on_table',\n        'type': 'string'\n    },\n    {\n        'name': 'person_id',\n        'type': 'int'\n    },\n    {\n        'name': 'remarks',\n        'type': 'string'\n    },\n    {\n        'name': 'person_id_id',\n        'type': 'int'\n    },\n    {\n        'name': 'person_id_office_id',\n        'type': 'int'\n    },\n    {\n        'name': 'person_id_name',\n        'type': 'string'\n    },\n    {\n        'name': 'person_id_phone',\n        'type': 'string'\n    },\n    {\n        'name': 'person_id_fax',\n        'type': 'string'\n    },\n    {\n        'name': 'person_id_email',\n        'type': 'string'\n    },\n    {\n        'name': 'person_id_company_id',\n        'type': 'int'\n    },\n    {\n        'name': 'person_id_role',\n        'type': 'string'\n    },\n    {\n        'name': 'person_id_active',\n        'type': 'int'\n    },\n    {\n        'name': 'person_id_remarks',\n        'type': 'string'\n    },\n    {\n        'name': 'person_id_passwd',\n        'type': 'string'\n    },\n    {\n        'name': 'person_id_owner_id',\n        'type': 'int'\n    },\n    {\n        'name': 'person_id_lang',\n        'type': 'string'\n    },\n    {\n        'name': 'person_id_no_reset_sent',\n        'type': 'int'\n    },\n    {\n        'name': 'person_id_action_type',\n        'type': 'string'\n    },\n    {\n        'name': 'person_id_project_id',\n        'type': 'int'\n    },\n    {\n        'name': 'person_id_deleted_by',\n        'type': 'int'\n    },\n    {\n        'name': 'person_id_deleted_dt',\n        'type': 'date'\n    }\n]",
214                          "xtype" : "JsonReader",
215                          "$ xns" : "Roo.data",
216                          "* prop" : "reader"
217                         }
218                        ]
219                       }
220                      ]
221                     }
222                    ]
223                   },
224                   {
225                    "Number md" : 2,
226                    "xtype" : "Column",
227                    "$ xns" : "Roo.bootstrap",
228                    "items" : [
229                     {
230                      "listeners" : {
231                       "render" : "function (_self)\n{\n    _this.affectSel = this;\n}",
232                       "select" : "function (combo, record, index)\n{\n    _this.table.footer.onClick('first');\n}"
233                      },
234                      "Boolean allowBlank" : true,
235                      "String valueField" : "id",
236                      "Boolean typeAhead" : true,
237                      "Boolean removable" : true,
238                      "xtype" : "ComboBox",
239                      "Boolean editable" : false,
240                      "String triggerAction" : "all",
241                      "Boolean alwaysQuery" : false,
242                      "string placeholder" : "select affected",
243                      "Number listWidth" : 300,
244                      "$ xns" : "Roo.bootstrap",
245                      "Boolean multiple" : false,
246                      "String displayField" : "on_table",
247                      "Boolean forceSelection" : true,
248                      "items" : [
249                       {
250                        "listeners" : {
251                         "beforeload" : "function (_self, o)\n{\n    o.params = o.params || {};\n    \n    /*\n    // staff can see all logs, other companies can only see their own.\n    if (Pman.Login.authUser.company_id_comptype != 'OWNER') {\n        o.params.company_id = Pman.Login.authUser.company_id;\n    }\n    */\n    \n    o.params._distinct = 'on_table';\n    \n    o.params._columns ='on_table';\n}"
252                        },
253                        "Object sortInfo" : "{ field : 'on_table' , direction : 'ASC' }",
254                        "xtype" : "Store",
255                        "boolean remoteSort" : true,
256                        "$ xns" : "Roo.data",
257                        "* prop" : "store",
258                        "items" : [
259                         {
260                          "xtype" : "HttpProxy",
261                          "$ xns" : "Roo.data",
262                          "String method" : "GET",
263                          "* prop" : "proxy",
264                          "$ String url" : "baseURL + '/Roo/Events'"
265                         },
266                         {
267                          "$ Array fields" : "[\n    {\n        'name': 'id',\n        'type': 'int'\n    },\n    {\n        'name': 'person_name',\n        'type': 'string'\n    },\n    {\n        'name': 'event_when',\n        'type': 'date',\n        'dateFormat': 'Y-m-d'\n    },\n    {\n        'name': 'action',\n        'type': 'string'\n    },\n    {\n        'name': 'ipaddr',\n        'type': 'string'\n    },\n    {\n        'name': 'on_id',\n        'type': 'int'\n    },\n    {\n        'name': 'on_table',\n        'type': 'string'\n    },\n    {\n        'name': 'person_id',\n        'type': 'int'\n    },\n    {\n        'name': 'remarks',\n        'type': 'string'\n    },\n    {\n        'name': 'person_id_id',\n        'type': 'int'\n    },\n    {\n        'name': 'person_id_office_id',\n        'type': 'int'\n    },\n    {\n        'name': 'person_id_name',\n        'type': 'string'\n    },\n    {\n        'name': 'person_id_phone',\n        'type': 'string'\n    },\n    {\n        'name': 'person_id_fax',\n        'type': 'string'\n    },\n    {\n        'name': 'person_id_email',\n        'type': 'string'\n    },\n    {\n        'name': 'person_id_company_id',\n        'type': 'int'\n    },\n    {\n        'name': 'person_id_role',\n        'type': 'string'\n    },\n    {\n        'name': 'person_id_active',\n        'type': 'int'\n    },\n    {\n        'name': 'person_id_remarks',\n        'type': 'string'\n    },\n    {\n        'name': 'person_id_passwd',\n        'type': 'string'\n    },\n    {\n        'name': 'person_id_owner_id',\n        'type': 'int'\n    },\n    {\n        'name': 'person_id_lang',\n        'type': 'string'\n    },\n    {\n        'name': 'person_id_no_reset_sent',\n        'type': 'int'\n    },\n    {\n        'name': 'person_id_action_type',\n        'type': 'string'\n    },\n    {\n        'name': 'person_id_project_id',\n        'type': 'int'\n    },\n    {\n        'name': 'person_id_deleted_by',\n        'type': 'int'\n    },\n    {\n        'name': 'person_id_deleted_dt',\n        'type': 'date'\n    }\n]",
268                          "xtype" : "JsonReader",
269                          "$ xns" : "Roo.data",
270                          "* prop" : "reader"
271                         }
272                        ]
273                       }
274                      ]
275                     }
276                    ]
277                   },
278                   {
279                    "Number md" : 1,
280                    "xtype" : "Column",
281                    "$ xns" : "Roo.bootstrap",
282                    "items" : [
283                     {
284                      "String cls" : "roo-toolbar-label",
285                      "xtype" : "FieldLabel",
286                      "$ xns" : "Roo.bootstrap",
287                      "String html" : "Date Range <i class=\"fa fa-calendar\" aria-hidden=\"true\"></i>"
288                     }
289                    ]
290                   },
291                   {
292                    "Number md" : 2,
293                    "xtype" : "Column",
294                    "$ xns" : "Roo.bootstrap",
295                    "items" : [
296                     {
297                      "listeners" : {
298                       "render" : "function (_self)\n{\n    _this.dateFrom = _self;\n}",
299                       "change" : "function (_self, newValue, oldValue)\n{\n      _this.table.footer.onClick('first');\n}"
300                      },
301                      "xtype" : "DateField",
302                      "string placeholder" : "Start",
303                      "$ xns" : "Roo.bootstrap"
304                     }
305                    ]
306                   },
307                   {
308                    "Number md" : 2,
309                    "xtype" : "Column",
310                    "$ xns" : "Roo.bootstrap",
311                    "items" : [
312                     {
313                      "listeners" : {
314                       "render" : "function (_self)\n{\n    _this.dateTo = _self;\n}",
315                       "change" : "function (_self, newValue, oldValue)\n{\n    _this.table.footer.onClick('first');\n}"
316                      },
317                      "xtype" : "DateField",
318                      "string placeholder" : "End",
319                      "$ xns" : "Roo.bootstrap"
320                     }
321                    ]
322                   }
323                  ]
324                 }
325                ]
326               }
327              ]
328             }
329            ]
330           }
331          ]
332         },
333         {
334          "listeners" : {
335           "rowdblclick" : "function (_self, el, rowIndex, e)\n{\n/*\n    if (!_this.dialog) {\n        return;\n    }\n    _this.dialog.show(_this.grid.grid.store.getAt(rowIndex).data, function() {\n        if (_this.table) {\n            _this.table.footer.onClick('first');\n        }\n    });\n*/\n}",
336           "render" : "function (_self)\n{\n    \n    _this.table = _self;\n    \n}"
337          },
338          "String cls" : "table-fixed",
339          "boolean striped" : false,
340          "boolean hover" : true,
341          "xtype" : "Table",
342          "boolean responsive" : true,
343          "Boolean rowSelection" : true,
344          "$ xns" : "Roo.bootstrap",
345          "Boolean loadMask" : true,
346          "* prop" : "grid",
347          "items" : [
348           {
349            "listeners" : {
350             "beforeload" : "function (_self, o)\n{\n    if (!Pman.buildCompleted) {\n        return false;\n    }\n    \n    o.params = o.params || {};\n    \n    o.params.person_id = _this.personSel.getValue();\n    \n    var act = _this.actionSel.getValue();\n    \n    if (act.length) {\n        \n        o.params.action = act;\n        \n    }\n    var tbl = _this.affectSel.getValue();\n    \n    if (tbl.length) {\n    \n        o.params.on_table = tbl;\n        \n    }\n    \n    var f = _this.dateFrom.getValue().split(\"/\");\n    \n    var df_string = f[2]+\"-\"+f[0]+\"-\"+f[1];\n    \n    var df = new Date(Date.parse(f));\n    \n    var t = _this.dateTo.getValue().split(\"/\");\n        \n    var dt_string = t[2]+\"-\"+t[0]+\"-\"+t[1];\n    \n    var dt = new Date(Date.parse(t));\n    \n    if (\n        _this.dateFrom.format && \n        \n        _this.dateTo.format &&\n        \n        (dt > df)\n    ) {\n        o.params['query[from]'] = df_string;\n        \n        o.params['query[to]'] = dt_string;\n        \n    }\n    \n}",
351             "load" : "function (_self, records, options)\n{\n    //Roo.log(records);\n}"
352            },
353            "boolean hover" : true,
354            "boolean striped" : true,
355            "$ Object sortInfo" : "{ field: 'event_when', direction: 'DESC'}",
356            "xtype" : "Store",
357            "Boolean rowSelection" : true,
358            "boolean remoteSort" : true,
359            "$ xns" : "Roo.data",
360            "Boolean loadMask" : true,
361            "* prop" : "store",
362            "items" : [
363             {
364              "$ Array fields" : "[\n    {\n        'name': 'id',\n        'type': 'int'\n    },\n    {\n        'name': 'person_name',\n        'type': 'string'\n    },\n    {\n        'name': 'event_when',\n        'type': 'date',\n        'dateFormat': 'Y-m-d'\n    },\n    {\n        'name': 'action',\n        'type': 'string'\n    },\n    {\n        'name': 'ipaddr',\n        'type': 'string'\n    },\n    {\n        'name': 'on_id',\n        'type': 'int'\n    },\n    {\n        'name': 'on_table',\n        'type': 'string'\n    },\n    {\n        'name': 'person_id',\n        'type': 'int'\n    },\n    {\n        'name': 'remarks',\n        'type': 'string'\n    },\n    {\n        'name': 'person_id_id',\n        'type': 'int'\n    },\n    {\n        'name': 'person_id_office_id',\n        'type': 'int'\n    },\n    {\n        'name': 'person_id_name',\n        'type': 'string'\n    },\n    {\n        'name': 'person_id_phone',\n        'type': 'string'\n    },\n    {\n        'name': 'person_id_fax',\n        'type': 'string'\n    },\n    {\n        'name': 'person_id_email',\n        'type': 'string'\n    },\n    {\n        'name': 'person_id_company_id',\n        'type': 'int'\n    },\n    {\n        'name': 'person_id_role',\n        'type': 'string'\n    },\n    {\n        'name': 'person_id_active',\n        'type': 'int'\n    },\n    {\n        'name': 'person_id_remarks',\n        'type': 'string'\n    },\n    {\n        'name': 'person_id_passwd',\n        'type': 'string'\n    },\n    {\n        'name': 'person_id_owner_id',\n        'type': 'int'\n    },\n    {\n        'name': 'person_id_lang',\n        'type': 'string'\n    },\n    {\n        'name': 'person_id_no_reset_sent',\n        'type': 'int'\n    },\n    {\n        'name': 'person_id_action_type',\n        'type': 'string'\n    },\n    {\n        'name': 'person_id_project_id',\n        'type': 'int'\n    },\n    {\n        'name': 'person_id_deleted_by',\n        'type': 'int'\n    },\n    {\n        'name': 'person_id_deleted_dt',\n        'type': 'date'\n    }\n]",
365              "xtype" : "JsonReader",
366              "String root" : "data",
367              "$ xns" : "Roo.data",
368              "String id" : "id",
369              "* prop" : "reader",
370              "String totalProperty" : "total"
371             },
372             {
373              "listeners" : {
374               "load" : "function (This, o, arg)\n{\n    //_this.table.footer.onClick('first');\n}"
375              },
376              "xtype" : "HttpProxy",
377              "$ xns" : "Roo.data",
378              "String method" : "GET",
379              "* prop" : "proxy",
380              "$ String url" : "baseURL + '/Roo/Events'"
381             }
382            ]
383           },
384           {
385            "listeners" : {
386             "afterselectionchange" : "function (_self)\n{\n    \n    if (!this.getSelected()) {\n        \n        _this.viewPanel.setContent(\"Nothing Selected\");\n        \n        return;\n        \n    }\n    \n    var id = this.getSelected().data.id;\n    \n    _this.viewPanel.load( { url : baseURL + \"/Admin/EventView/\" + id + \".html\" });\n    \n}"
387            },
388            "xtype" : "RowSelectionModel",
389            "$ xns" : "Roo.bootstrap.Table",
390            "* prop" : "sm"
391           },
392           {
393            "listeners" : {
394             "render" : "function (_self)\n{\n    _this.footer = _self;\n}"
395            },
396            "Number pageSize" : 25,
397            "String displayMsg" : "Displaying Companies{0} - {1} of {2}",
398            "Boolean displayInfo" : false,
399            "xtype" : "PagingToolbar",
400            "String emptyMsg" : "No Companies found",
401            "$ xns" : "Roo.bootstrap",
402            "* prop" : "footer",
403            "string name" : "footer"
404           },
405           {
406            "String header" : "When",
407            "String dataIndex" : "event_when",
408            "Number md" : 2,
409            "xtype" : "ColumnModel",
410            "Number xs" : 2,
411            "$ xns" : "Roo.grid",
412            "$ renderer" : "function(v) { return v ? v.dateFormat('Y/m/d H:i') : ''; }",
413            "Boolean sortable" : true,
414            "* prop" : "cm[]",
415            "Number sm" : 2
416           },
417           {
418            "String header" : "#id",
419            "String dataIndex" : "id",
420            "Number md" : 1,
421            "xtype" : "ColumnModel",
422            "Number xs" : 1,
423            "$ xns" : "Roo.grid",
424            "$ renderer" : "function(v) { return String.format('{0}', v); }",
425            "Boolean sortable" : true,
426            "* prop" : "cm[]",
427            "Number sm" : 1
428           },
429           {
430            "String header" : "Person",
431            "String dataIndex" : "person_id_name",
432            "Number md" : 2,
433            "xtype" : "ColumnModel",
434            "Number xs" : 2,
435            "$ xns" : "Roo.grid",
436            "$ renderer" : "function(v) { return String.format('{0}', v); }",
437            "Boolean sortable" : true,
438            "* prop" : "cm[]",
439            "Number sm" : 2
440           },
441           {
442            "String header" : "Action",
443            "String dataIndex" : "action",
444            "Number md" : 1,
445            "xtype" : "ColumnModel",
446            "Number xs" : 1,
447            "$ xns" : "Roo.grid",
448            "$ renderer" : "function(v) { return String.format('{0}', v); }",
449            "* prop" : "cm[]",
450            "Number sm" : 1
451           },
452           {
453            "String header" : "IP",
454            "String dataIndex" : "ipaddr",
455            "Number md" : 1,
456            "xtype" : "ColumnModel",
457            "Number xs" : 1,
458            "$ xns" : "Roo.grid",
459            "$ renderer" : "function(v) { return String.format('{0}', v); }",
460            "* prop" : "cm[]",
461            "Number sm" : 1
462           },
463           {
464            "String header" : "Affected",
465            "String dataIndex" : "on_table",
466            "Number md" : 1,
467            "xtype" : "ColumnModel",
468            "Number xs" : 1,
469            "$ xns" : "Roo.grid",
470            "$ renderer" : "function(v, x, r) {\n    \n    return v ? String.format('{0}({1})', v,  r.data.on_id)  : '';\n    \n}",
471            "* prop" : "cm[]",
472            "Number sm" : 1
473           },
474           {
475            "String header" : "Remarks",
476            "String dataIndex" : "remarks",
477            "Number md" : 4,
478            "xtype" : "ColumnModel",
479            "Number xs" : 4,
480            "$ xns" : "Roo.grid",
481            "$ renderer" : "function(v) { return String.format('{0}', v); }",
482            "* prop" : "cm[]",
483            "Number sm" : 4
484           }
485          ]
486         }
487        ]
488       }
489      ]
490     }
491    ]
492   }
493  ]
494 }