From 4ccb1d263b0ef69263fa54bc81c05447042523e8 Mon Sep 17 00:00:00 2001 From: Edward Date: Thu, 2 Apr 2015 14:54:52 +0800 Subject: [PATCH] Pman.Tab.AdminLogEvents.bjs Pman.Tab.AdminLogEvents.js --- Pman.Tab.AdminLogEvents.bjs | 872 ++++++------ Pman.Tab.AdminLogEvents.js | 2630 ++++++++++++++++++----------------- 2 files changed, 1772 insertions(+), 1730 deletions(-) diff --git a/Pman.Tab.AdminLogEvents.bjs b/Pman.Tab.AdminLogEvents.bjs index 976fcb1..6fd833d 100644 --- a/Pman.Tab.AdminLogEvents.bjs +++ b/Pman.Tab.AdminLogEvents.bjs @@ -1,432 +1,452 @@ { - "name" : "Pman.Tab.AdminLogEvents", - "parent" : "Pman.Tab.AdminLogs", - "title" : "Admin - Logs - Events", - "path" : "/home/edward/gitlive/Pman.Admin/Pman.Tab.AdminLogEvents.bjs", - "permname" : "Admin.Logs", - "modOrder" : "001", - "items" : [ + "name" : "Pman.Tab.AdminLogEvents", + "parent" : "Pman.Tab.AdminLogs", + "title" : "Admin - Logs - Events", + "path" : "/home/edward/gitlive/Pman.Admin/Pman.Tab.AdminLogEvents.bjs", + "permname" : "Admin.Logs", + "modOrder" : "001", + "strings" : { + "231bc72756b5e6de492aaaa1577f61b1" : "Remarks", + "2ea72778ebaacc973260c88837dd7a2f" : "Displaying Events {0} - {1} of {2}", + "87f9f735a1d36793ceaecd4e47124b63" : "Events", + "1b7f7d24575cdbfadb83b9587fa1bf97" : "#id", + "a12a3079e14ced46e69ba52b8a90b21a" : "IP", + "1243daf593fa297e07ab03bf06d925af" : "Searching...", + "01bd6a16732dfa2b760dc8566c58afae" : "Download to Excel", + "498f79c4c5bbde77f1bceb6c86fd0f6d" : "Show", + "037fd50b0e85bb65995ca7125d06c7cd" : "Select Person Table", + "fd7535ce3979bb8547e2c01689db0767" : "Select Person ", + "679308a758de538c5f39c4c6cdba6593" : "Select Affects", + "8f7f93630c366dc55aec88eb8e9640d0" : "Staff", + "a8929eb5c1553d3f70497f862d25d0ce" : "Select Action", + "39b9e051f9fe75e65c7a330bb00499d4" : "Date Range", + "4e97aeeaa8b15ca1180fcd1f3ac478d1" : "When", + "004bf6c9a40003140292e97330236c53" : "Action", + "90e4ac2e5a22e53df63b6b186d8727ba" : "No Events found", + "2c92a9a6a5dbf570825e62eabcdecd8d" : "Affected" + }, + "items" : [ + { + "region" : "center", + "xtype" : "NestedLayoutPanel", + "title" : "Events", + "$ xns" : "Roo", + "items" : [ + { + "xtype" : "BorderLayout", + "$ xns" : "Roo", + "* prop" : "layout", + "items" : [ + { + "xtype" : "LayoutRegion", + "$ xns" : "Roo", + "* prop" : "center" + }, + { + "autoScroll" : true, + "xtype" : "LayoutRegion", + "$ xns" : "Roo", + "split" : true, + "height" : 150, + "* prop" : "south" + }, + { + "listeners" : { + "render" : "function (_self)\n{\n _this.viewPanel = _self;\n}" + }, + "fitToFrame" : true, + "region" : "south", + "xtype" : "ContentPanel", + "$ xns" : "Roo" + }, + { + "listeners" : { + "|activate" : "function() {\n _this.panel = this;\n if (_this.grid) {\n _this.grid.footer.onClick('first');\n }\n}" + }, + "background" : false, + "region" : "center", + "fitToframe" : true, + "title" : "Events", + "xtype" : "GridPanel", + "fitContainer" : true, + "$ xns" : "Roo", + "tableName" : "Events", + "items" : [ { - "region" : "center", - "title" : "Events", - "xtype" : "NestedLayoutPanel", - "$ xns" : "Roo", - "items" : [ + "listeners" : { + "|render" : "function() { \n _this.grid = this; \n //_this.dialog = Pman.Dialog.FILL_IN\n if (_this.panel.active) {\n this.footer.onClick('first');\n }\n}" + }, + "autoExpandColumn" : "remarks", + "xtype" : "Grid", + "loadMask" : true, + "$ xns" : "Roo.grid", + "* prop" : "grid", + "items" : [ + { + "listeners" : { + "afterselectionchange" : "function (_self)\n{\n // load detail log in _this.viewPanel;\n if (!this.getSelected()) {\n this.viewPanel.setContent(\"Nothing Selected\");\n return;\n }\n var id = this.getSelected().data.id;\n _this.viewPanel.load( { url : baseURL + \"/Admin/EventView/\" + id + \".html\" });\n \n}" + }, + "xtype" : "RowSelectionModel", + "singleSelect" : true, + "$ xns" : "Roo.grid", + "* prop" : "sm" + }, + { + "listeners" : { + "|beforeload" : "function (_self, o)\n{\n if (!Pman.buildCompleted) {\n return false;\n }\n \n \n if (! _this.personSel) {\n return false;\n }\n o.params = o.params || {};\n o.params.person_id = _this.personSel.getValue();\n o.params.person_table = _this.tableSel.getValue();\n var act = _this.actionSel.getValue();\n if (act.length) {\n o.params.action = act;\n }\n var tbl = _this.affectSel.getValue();\n if (tbl.length) {\n o.params.on_table = tbl;\n }\n act = _this.dateFrom.getValue();\n if (act.format) {\n o.params['query[from]'] = act.format('Y-m-d');\n }\n act = _this.dateTo.getValue();\n if (act.format) {\n o.params['query[to]'] = act.format('Y-m-d');\n }\n \n \n /*\n act = _this.groupedCombo.getValue();\n o.params['query[grouped]'] = act;\n if (o.params['query[grouped]'] == 'gr') {\n \n if (!tbl.length) {\n Roo.MessageBox.alert(\"Error\", \"Select a table to group results on\");\n return false;\n }\n// o.params['_columns'] = \n o.params['_distinct'] = 'on_id';\n \n \n }\n \n */\n\n \n}" + }, + "xtype" : "Store", + "remoteSort" : true, + "$ sortInfo" : "{ field: 'event_when', direction: 'DESC'}", + "$ xns" : "Roo.data", + "* prop" : "dataSource", + "items" : [ + { + "id" : "id", + "root" : "data", + "xtype" : "JsonReader", + "$ xns" : "Roo.data", + "$ 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]", + "* prop" : "reader", + "totalProperty" : "total" + }, + { + "$ url" : "baseURL + '/Roo/Events.php'", + "method" : "GET", + "xtype" : "HttpProxy", + "$ xns" : "Roo.data", + "* prop" : "proxy" + } + ] + }, + { + "pageSize" : 25, + "xtype" : "PagingToolbar", + "emptyMsg" : "No Events found", + "$ xns" : "Roo", + "displayInfo" : true, + "displayMsg" : "Displaying Events {0} - {1} of {2}", + "* prop" : "footer", + "items" : [ + { + "listeners" : { + "click" : "function (_self, e)\n{\n \n var params = {\n 'sort' : 'event_when',\n 'dir' : 'DESC',\n 'start' : 0,\n 'limit' : 900,\n person_id : _this.personSel.getValue(), \n 'csvTitles[0]' : 'When', 'csvCols[0]' : 'event_when', \n 'csvTitles[1]' : 'Staff', 'csvCols[1]' : 'person_id_name', \n 'csvTitles[2]' : 'Action', 'csvCols[2]' : 'action', \n 'csvTitles[3]' : 'Record ID', 'csvCols[3]' : 'on_id' ,\n 'csvTitles[4]' : 'Record Type', 'csvCols[4]' : 'on_table',\n 'csvTitles[5]' : 'Remarks', 'csvCols[5]' : 'remarks' \n }\n \n params.person_id = _this.personSel.getValue();\n var act = _this.actionSel.getValue();\n if (act.length) {\n params.action = act;\n }\n var tbl = _this.affectSel.getValue();\n if (tbl.length) {\n params.on_table = tbl;\n }\n act = _this.dateFrom.getValue();\n if (act.format) {\n params['query[from]'] = act.format('Y-m-d');\n }\n act = _this.dateTo.getValue();\n if (act.format) {\n params['query[to]'] = act.format('Y-m-d');\n }\n params.limit = 9999;\n \n\n new Pman.download({\n url : baseURL + '/Roo/Events.php',\n params : params ,\n newWindow: true\n \n });\n}" + }, + "text" : "Download to Excel", + "xtype" : "Button", + "$ xns" : "Roo.Toolbar" + } + ] + }, + { + "xtype" : "Toolbar", + "$ xns" : "Roo", + "* prop" : "toolbar", + "items" : [ + { + "text" : "Show", + "xtype" : "TextItem", + "$ xns" : "Roo.Toolbar" + }, + { + "listeners" : { + "|render" : "function (_self)\n{\n _this.tableSel = _self;\n}", + "|select" : "function (combo, record, index)\n{\n _this.grid.footer.onClick('first');\n}" + }, + "listWidth" : 300, + "triggerAction" : "all", + "forceSelection" : true, + "selectOnFocus" : true, + "pageSize" : 20, + "displayField" : "value", + "emptyText" : "Select Person Table", + "minChars" : 2, + "valueField" : "value", + "xtype" : "ComboBox", + "allowBlank" : true, + "typeAhead" : true, + "Boolean alwaysQuery" : true, + "editable" : false, + "width" : 150, + "$ xns" : "Roo.form", + "name" : "person_table", + "qtip" : "Select Person Table", + "tpl" : "
{value}
", + "loadingText" : "Searching...", + "items" : [ + { + "| data" : "(function() { \n\n if(typeof(uiConfig) == 'undefined' || typeof(uiConfig.events_person_table) == 'undefined' || !uiConfig.events_person_table.length){\n\n return []; \n }\n\n return uiConfig.events_person_table;\n \n})()", + "xtype" : "SimpleStore", + "$ fields" : "[ 'value' ]", + "$ xns" : "Roo.data", + "* prop" : "store", + "isLocal" : true + } + ] + }, + { + "listeners" : { + "|render" : "function (_self)\n{\n _this.personSel = _self;\n}", + "|select" : "function (combo, record, index)\n{\n _this.grid.footer.onClick('first');\n \n}" + }, + "listWidth" : 600, + "triggerAction" : "all", + "fieldLabel" : "Person ", + "forceSelection" : true, + "selectOnFocus" : true, + "pageSize" : 20, + "displayField" : "name", + "emptyText" : "Select Person ", + "minChars" : 2, + "valueField" : "id", + "xtype" : "ComboBox", + "allowBlank" : true, + "typeAhead" : true, + "editable" : true, + "width" : 150, + "$ xns" : "Roo.form", + "name" : "person_id_name", + "qtip" : "Select Person ", + "queryParam" : "query[name]", + "tpl" : "
{name} ({company_id_name}) <{email}>
", + "loadingText" : "Searching...", + "items" : [ + { + "listeners" : { + "|beforeload" : "function (_self, o)\n{\n o.params = o.params || {};\n o.params.company_id = Pman.Login.authUser.company_id;\n}" + }, + "xtype" : "Store", + "remoteSort" : true, + "$ sortInfo" : "{ field : 'name' , direction : 'ASC' }", + "$ xns" : "Roo.data", + "* prop" : "store", + "items" : [ { - "xtype" : "BorderLayout", - "$ xns" : "Roo", - "* prop" : "layout", - "items" : [ - { - "xtype" : "LayoutRegion", - "$ xns" : "Roo", - "* prop" : "center" - }, - { - "autoScroll" : true, - "xtype" : "LayoutRegion", - "$ xns" : "Roo", - "split" : true, - "height" : 150, - "* prop" : "south" - }, - { - "listeners" : { - "render" : "function (_self)\n{\n _this.viewPanel = _self;\n}" - }, - "fitToFrame" : true, - "region" : "south", - "xtype" : "ContentPanel", - "$ xns" : "Roo" - }, - { - "listeners" : { - "|activate" : "function() {\n _this.panel = this;\n if (_this.grid) {\n _this.grid.footer.onClick('first');\n }\n}" - }, - "region" : "center", - "fitToframe" : true, - "background" : false, - "title" : "Events", - "xtype" : "GridPanel", - "fitContainer" : true, - "$ xns" : "Roo", - "tableName" : "Events", - "items" : [ - { - "listeners" : { - "|render" : "function() { \n _this.grid = this; \n //_this.dialog = Pman.Dialog.FILL_IN\n if (_this.panel.active) {\n this.footer.onClick('first');\n }\n}" - }, - "autoExpandColumn" : "remarks", - "xtype" : "Grid", - "loadMask" : true, - "$ xns" : "Roo.grid", - "* prop" : "grid", - "items" : [ - { - "listeners" : { - "afterselectionchange" : "function (_self)\n{\n // load detail log in _this.viewPanel;\n if (!this.getSelected()) {\n this.viewPanel.setContent(\"Nothing Selected\");\n return;\n }\n var id = this.getSelected().data.id;\n _this.viewPanel.load( { url : baseURL + \"/Admin/EventView/\" + id + \".html\" });\n \n}" - }, - "xtype" : "RowSelectionModel", - "singleSelect" : true, - "$ xns" : "Roo.grid", - "* prop" : "sm" - }, - { - "listeners" : { - "|beforeload" : "function (_self, o)\n{\n if (!Pman.buildCompleted) {\n return false;\n }\n \n \n if (! _this.personSel) {\n return false;\n }\n o.params = o.params || {};\n o.params.person_id = _this.personSel.getValue();\n o.params.person_table = _this.tableSel.getValue();\n var act = _this.actionSel.getValue();\n if (act.length) {\n o.params.action = act;\n }\n var tbl = _this.affectSel.getValue();\n if (tbl.length) {\n o.params.on_table = tbl;\n }\n act = _this.dateFrom.getValue();\n if (act.format) {\n o.params['query[from]'] = act.format('Y-m-d');\n }\n act = _this.dateTo.getValue();\n if (act.format) {\n o.params['query[to]'] = act.format('Y-m-d');\n }\n \n \n /*\n act = _this.groupedCombo.getValue();\n o.params['query[grouped]'] = act;\n if (o.params['query[grouped]'] == 'gr') {\n \n if (!tbl.length) {\n Roo.MessageBox.alert(\"Error\", \"Select a table to group results on\");\n return false;\n }\n// o.params['_columns'] = \n o.params['_distinct'] = 'on_id';\n \n \n }\n \n */\n\n \n}" - }, - "xtype" : "Store", - "remoteSort" : true, - "$ sortInfo" : "{ field: 'event_when', direction: 'DESC'}", - "$ xns" : "Roo.data", - "* prop" : "dataSource", - "items" : [ - { - "id" : "id", - "root" : "data", - "xtype" : "JsonReader", - "$ xns" : "Roo.data", - "$ 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]", - "* prop" : "reader", - "totalProperty" : "total" - }, - { - "$ url" : "baseURL + '/Roo/Events.php'", - "xtype" : "HttpProxy", - "method" : "GET", - "$ xns" : "Roo.data", - "* prop" : "proxy" - } - ] - }, - { - "pageSize" : 25, - "xtype" : "PagingToolbar", - "emptyMsg" : "No Events found", - "$ xns" : "Roo", - "displayInfo" : true, - "displayMsg" : "Displaying Events {0} - {1} of {2}", - "* prop" : "footer", - "items" : [ - { - "listeners" : { - "click" : "function (_self, e)\n{\n \n var params = {\n 'sort' : 'event_when',\n 'dir' : 'DESC',\n 'start' : 0,\n 'limit' : 900,\n person_id : _this.personSel.getValue(), \n 'csvTitles[0]' : 'When', 'csvCols[0]' : 'event_when', \n 'csvTitles[1]' : 'Staff', 'csvCols[1]' : 'person_id_name', \n 'csvTitles[2]' : 'Action', 'csvCols[2]' : 'action', \n 'csvTitles[3]' : 'Record ID', 'csvCols[3]' : 'on_id' ,\n 'csvTitles[4]' : 'Record Type', 'csvCols[4]' : 'on_table',\n 'csvTitles[5]' : 'Remarks', 'csvCols[5]' : 'remarks' \n }\n \n params.person_id = _this.personSel.getValue();\n var act = _this.actionSel.getValue();\n if (act.length) {\n params.action = act;\n }\n var tbl = _this.affectSel.getValue();\n if (tbl.length) {\n params.on_table = tbl;\n }\n act = _this.dateFrom.getValue();\n if (act.format) {\n params['query[from]'] = act.format('Y-m-d');\n }\n act = _this.dateTo.getValue();\n if (act.format) {\n params['query[to]'] = act.format('Y-m-d');\n }\n params.limit = 9999;\n \n\n new Pman.download({\n url : baseURL + '/Roo/Events.php',\n params : params ,\n newWindow: true\n \n });\n}" - }, - "text" : "Download to Excel", - "xtype" : "Button", - "$ xns" : "Roo.Toolbar" - } - ] - }, - { - "xtype" : "Toolbar", - "$ xns" : "Roo", - "* prop" : "toolbar", - "items" : [ - { - "text" : "Show", - "xtype" : "TextItem", - "$ xns" : "Roo.Toolbar" - }, - { - "listeners" : { - "|render" : "function (_self)\n{\n _this.tableSel = _self;\n}", - "|select" : "function (combo, record, index)\n{\n _this.grid.footer.onClick('first');\n}" - }, - "listWidth" : 300, - "triggerAction" : "all", - "forceSelection" : true, - "selectOnFocus" : true, - "pageSize" : 20, - "displayField" : "value", - "emptyText" : "Select Person Table", - "minChars" : 2, - "valueField" : "value", - "xtype" : "ComboBox", - "allowBlank" : true, - "typeAhead" : true, - "Boolean alwaysQuery" : true, - "editable" : false, - "width" : 150, - "$ xns" : "Roo.form", - "name" : "person_table", - "qtip" : "Select Person Table", - "tpl" : "
{value}
", - "loadingText" : "Searching...", - "items" : [ - { - "| data" : "(function() { \n\n if(typeof(uiConfig) == 'undefined' || typeof(uiConfig.events_person_table) == 'undefined' || !uiConfig.events_person_table.length){\n\n return []; \n }\n\n return uiConfig.events_person_table;\n \n})()", - "xtype" : "SimpleStore", - "$ fields" : "[ 'value' ]", - "$ xns" : "Roo.data", - "* prop" : "store", - "isLocal" : true - } - ] - }, - { - "listeners" : { - "|render" : "function (_self)\n{\n _this.personSel = _self;\n}", - "|select" : "function (combo, record, index)\n{\n _this.grid.footer.onClick('first');\n \n}" - }, - "listWidth" : 600, - "triggerAction" : "all", - "fieldLabel" : "Person ", - "forceSelection" : true, - "selectOnFocus" : true, - "pageSize" : 20, - "displayField" : "name", - "emptyText" : "Select Person ", - "minChars" : 2, - "valueField" : "id", - "xtype" : "ComboBox", - "allowBlank" : true, - "typeAhead" : true, - "editable" : true, - "width" : 150, - "$ xns" : "Roo.form", - "name" : "person_id_name", - "qtip" : "Select Person ", - "queryParam" : "query[name]", - "tpl" : "
{name} ({company_id_name}) <{email}>
", - "loadingText" : "Searching...", - "items" : [ - { - "listeners" : { - "|beforeload" : "function (_self, o)\n{\n o.params = o.params || {};\n o.params.company_id = Pman.Login.authUser.company_id;\n}" - }, - "xtype" : "Store", - "remoteSort" : true, - "$ sortInfo" : "{ field : 'name' , direction : 'ASC' }", - "$ xns" : "Roo.data", - "* prop" : "store", - "items" : [ - { - "$ url" : "baseURL + '/Roo/Person.php'", - "method" : "GET", - "xtype" : "HttpProxy", - "$ xns" : "Roo.data", - "* prop" : "proxy" - }, - { - "id" : "id", - "root" : "data", - "xtype" : "JsonReader", - "$ 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]", - "$ xns" : "Roo.data", - "* prop" : "reader", - "totalProperty" : "total" - } - ] - } - ] - }, - { - "listeners" : { - "|render" : "function (_self)\n{\n _this.actionSel = _self;\n}", - "|select" : "function (combo, record, index)\n{\n _this.grid.footer.onClick('first');\n}" - }, - "listWidth" : 300, - "triggerAction" : "all", - "forceSelection" : true, - "selectOnFocus" : true, - "pageSize" : 20, - "displayField" : "action", - "emptyText" : "Select Action", - "minChars" : 2, - "valueField" : "action", - "xtype" : "ComboBox", - "allowBlank" : true, - "typeAhead" : true, - "editable" : true, - "width" : 150, - "$ xns" : "Roo.form", - "name" : "action", - "qtip" : "Select Action", - "queryParam" : "query[action]", - "tpl" : "
{action}
", - "loadingText" : "Searching...", - "items" : [ - { - "listeners" : { - "|beforeload" : "function (_self, o)\n{\n o.params = o.params || {};\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 o.params._distinct = 'action';\n o.params._columns ='action';\n}" - }, - "xtype" : "Store", - "remoteSort" : true, - "$ sortInfo" : "{ field : 'action' , direction : 'ASC' }", - "$ xns" : "Roo.data", - "* prop" : "store", - "items" : [ - { - "$ url" : "baseURL + '/Roo/Events.php'", - "method" : "GET", - "xtype" : "HttpProxy", - "$ xns" : "Roo.data", - "* prop" : "proxy" - }, - { - "id" : "id", - "root" : "data", - "xtype" : "JsonReader", - "$ 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]", - "$ xns" : "Roo.data", - "* prop" : "reader", - "totalProperty" : "total" - } - ] - } - ] - }, - { - "listeners" : { - "|render" : "function (_self)\n{\n _this.affectSel = _self;\n}", - "|select" : "function (combo, record, index)\n{\n _this.grid.footer.onClick('first');\n}" - }, - "listWidth" : 300, - "triggerAction" : "all", - "forceSelection" : true, - "selectOnFocus" : true, - "pageSize" : 20, - "displayField" : "on_table", - "emptyText" : "Select Affects", - "minChars" : 2, - "valueField" : "action", - "xtype" : "ComboBox", - "allowBlank" : true, - "typeAhead" : true, - "editable" : true, - "width" : 150, - "$ xns" : "Roo.form", - "name" : "on_table", - "qtip" : "Select Action", - "queryParam" : "query[on_table]", - "tpl" : "
{on_table}
", - "loadingText" : "Searching...", - "items" : [ - { - "listeners" : { - "|beforeload" : "function (_self, o)\n{\n o.params = o.params || {};\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 o.params._distinct = 'on_table';\n o.params._columns ='on_table';\n}" - }, - "xtype" : "Store", - "remoteSort" : true, - "$ sortInfo" : "{ field : 'on_table' , direction : 'ASC' }", - "$ xns" : "Roo.data", - "* prop" : "store", - "items" : [ - { - "$ url" : "baseURL + '/Roo/Events.php'", - "method" : "GET", - "xtype" : "HttpProxy", - "$ xns" : "Roo.data", - "* prop" : "proxy" - }, - { - "id" : "id", - "root" : "data", - "xtype" : "JsonReader", - "$ xns" : "Roo.data", - "$ 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]", - "* prop" : "reader", - "totalProperty" : "total" - } - ] - } - ] - }, - { - "text" : "Date Range", - "xtype" : "TextItem", - "$ xns" : "Roo.Toolbar" - }, - { - "listeners" : { - "render" : "function (_self)\n{\n _this.dateFrom = _self;\n}", - "change" : "function (_self, newValue, oldValue)\n{\n _this.grid.footer.onClick('first');\n}" - }, - "format" : "Y-m-d", - "xtype" : "DateField", - "$ xns" : "Roo.form" - }, - { - "listeners" : { - "render" : "function (_self)\n{\n _this.dateTo = _self;\n}", - "change" : "function (_self, newValue, oldValue)\n{\n _this.grid.footer.onClick('first');\n}" - }, - "format" : "Y-m-d", - "xtype" : "DateField", - "$ xns" : "Roo.form" - } - ] - }, - { - "xtype" : "ColumnModel", - "width" : 100, - "header" : "When", - "$ renderer" : "function(v) { return v ? v.dateFormat('d/m/Y H:i') : ''; }", - "$ xns" : "Roo.grid", - "* prop" : "colModel[]", - "dataIndex" : "event_when" - }, - { - "xtype" : "ColumnModel", - "width" : 100, - "header" : "#id", - "$ xns" : "Roo.grid", - "* prop" : "colModel[]", - "dataIndex" : "id" - }, - { - "xtype" : "ColumnModel", - "width" : 150, - "header" : "Staff", - "$ renderer" : "function(v,x,r) { \n \n var efield = typeof(_this.email_field) == 'undefined' ? 'person_id_email' : _this.email_field;\n var nfield = typeof(_this.name_field) == 'undefined' ? 'person_id_name' : _this.name_field; \n \n //Roo.log([r, efield, nfield]);\n \n var email = r.json[efield]; // ? r.data.person_id_email : r.data.person_id_email;\n var name = r.json[nfield]; // ? r.data.person_id_name : r.data.person_id_name; \n return String.format('{0} <{1}>', \n name, email); \n\n\n}", - "$ xns" : "Roo.grid", - "* prop" : "colModel[]", - "dataIndex" : "person_id_name" - }, - { - "xtype" : "ColumnModel", - "header" : "Action", - "width" : 100, - "$ renderer" : "function(v) { return String.format('{0}', v); }", - "$ xns" : "Roo.grid", - "* prop" : "colModel[]", - "dataIndex" : "action" - }, - { - "xtype" : "ColumnModel", - "header" : "IP", - "width" : 100, - "$ renderer" : "function(v) { return String.format('{0}', v); }", - "$ xns" : "Roo.grid", - "* prop" : "colModel[]", - "dataIndex" : "ipaddr" - }, - { - "xtype" : "ColumnModel", - "width" : 100, - "header" : "Affected", - "$ renderer" : "function(v, x, r) { \n return v ? String.format('{0}({1})', v, r.data.on_id) : ''; \n }", - "$ xns" : "Roo.grid", - "* prop" : "colModel[]", - "dataIndex" : "on_table" - }, - { - "xtype" : "ColumnModel", - "width" : 300, - "header" : "Remarks", - "$ renderer" : "function(v) { return String.format('{0}', v, Roo.util.Format.htmlEncode(v)); }", - "$ xns" : "Roo.grid", - "* prop" : "colModel[]", - "dataIndex" : "remarks" - } - ] - } - ] - } - ] + "$ url" : "baseURL + '/Roo/Person.php'", + "xtype" : "HttpProxy", + "method" : "GET", + "$ xns" : "Roo.data", + "* prop" : "proxy" + }, + { + "id" : "id", + "root" : "data", + "xtype" : "JsonReader", + "$ 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]", + "$ xns" : "Roo.data", + "* prop" : "reader", + "totalProperty" : "total" + } + ] + } + ] + }, + { + "listeners" : { + "|render" : "function (_self)\n{\n _this.actionSel = _self;\n}", + "|select" : "function (combo, record, index)\n{\n _this.grid.footer.onClick('first');\n}" + }, + "listWidth" : 300, + "triggerAction" : "all", + "forceSelection" : true, + "selectOnFocus" : true, + "pageSize" : 20, + "displayField" : "action", + "emptyText" : "Select Action", + "minChars" : 2, + "valueField" : "action", + "xtype" : "ComboBox", + "allowBlank" : true, + "typeAhead" : true, + "editable" : true, + "width" : 150, + "$ xns" : "Roo.form", + "name" : "action", + "qtip" : "Select Action", + "queryParam" : "query[action]", + "tpl" : "
{action}
", + "loadingText" : "Searching...", + "items" : [ + { + "listeners" : { + "|beforeload" : "function (_self, o)\n{\n o.params = o.params || {};\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 o.params._distinct = 'action';\n o.params._columns ='action';\n}" + }, + "xtype" : "Store", + "remoteSort" : true, + "$ sortInfo" : "{ field : 'action' , direction : 'ASC' }", + "$ xns" : "Roo.data", + "* prop" : "store", + "items" : [ + { + "$ url" : "baseURL + '/Roo/Events.php'", + "xtype" : "HttpProxy", + "method" : "GET", + "$ xns" : "Roo.data", + "* prop" : "proxy" + }, + { + "id" : "id", + "root" : "data", + "xtype" : "JsonReader", + "$ 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]", + "$ xns" : "Roo.data", + "* prop" : "reader", + "totalProperty" : "total" + } + ] + } + ] + }, + { + "listeners" : { + "|render" : "function (_self)\n{\n _this.affectSel = _self;\n}", + "|select" : "function (combo, record, index)\n{\n _this.grid.footer.onClick('first');\n}" + }, + "listWidth" : 300, + "triggerAction" : "all", + "forceSelection" : true, + "selectOnFocus" : true, + "pageSize" : 20, + "displayField" : "on_table", + "emptyText" : "Select Affects", + "minChars" : 2, + "valueField" : "action", + "xtype" : "ComboBox", + "allowBlank" : true, + "typeAhead" : true, + "editable" : true, + "width" : 150, + "$ xns" : "Roo.form", + "name" : "on_table", + "qtip" : "Select Action", + "queryParam" : "query[on_table]", + "tpl" : "
{on_table}
", + "loadingText" : "Searching...", + "items" : [ + { + "listeners" : { + "|beforeload" : "function (_self, o)\n{\n o.params = o.params || {};\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 o.params._distinct = 'on_table';\n o.params._columns ='on_table';\n}" + }, + "xtype" : "Store", + "remoteSort" : true, + "$ sortInfo" : "{ field : 'on_table' , direction : 'ASC' }", + "$ xns" : "Roo.data", + "* prop" : "store", + "items" : [ + { + "$ url" : "baseURL + '/Roo/Events.php'", + "xtype" : "HttpProxy", + "method" : "GET", + "$ xns" : "Roo.data", + "* prop" : "proxy" + }, + { + "id" : "id", + "root" : "data", + "xtype" : "JsonReader", + "$ xns" : "Roo.data", + "$ 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]", + "* prop" : "reader", + "totalProperty" : "total" } - ] + ] + } + ] + }, + { + "text" : "Date Range", + "xtype" : "TextItem", + "$ xns" : "Roo.Toolbar" + }, + { + "listeners" : { + "render" : "function (_self)\n{\n _this.dateFrom = _self;\n}", + "change" : "function (_self, newValue, oldValue)\n{\n _this.grid.footer.onClick('first');\n}" + }, + "format" : "Y-m-d", + "xtype" : "DateField", + "$ xns" : "Roo.form" + }, + { + "listeners" : { + "render" : "function (_self)\n{\n _this.dateTo = _self;\n}", + "change" : "function (_self, newValue, oldValue)\n{\n _this.grid.footer.onClick('first');\n}" + }, + "format" : "Y-m-d", + "xtype" : "DateField", + "$ xns" : "Roo.form" + } + ] + }, + { + "xtype" : "ColumnModel", + "header" : "When", + "width" : 100, + "$ renderer" : "function(v) { return v ? v.dateFormat('d/m/Y H:i') : ''; }", + "$ xns" : "Roo.grid", + "* prop" : "colModel[]", + "dataIndex" : "event_when" + }, + { + "xtype" : "ColumnModel", + "header" : "#id", + "width" : 100, + "$ xns" : "Roo.grid", + "* prop" : "colModel[]", + "dataIndex" : "id" + }, + { + "xtype" : "ColumnModel", + "header" : "Staff", + "width" : 150, + "$ renderer" : "function(v,x,r) { \n \n var efield = typeof(_this.email_field) == 'undefined' ? 'person_id_email' : _this.email_field;\n var nfield = typeof(_this.name_field) == 'undefined' ? 'person_id_name' : _this.name_field; \n \n //Roo.log([r, efield, nfield]);\n \n var email = r.json[efield]; // ? r.data.person_id_email : r.data.person_id_email;\n var name = r.json[nfield]; // ? r.data.person_id_name : r.data.person_id_name; \n return String.format('{0} <{1}>', \n name, email); \n\n\n}", + "$ xns" : "Roo.grid", + "* prop" : "colModel[]", + "dataIndex" : "person_id_name" + }, + { + "xtype" : "ColumnModel", + "width" : 100, + "header" : "Action", + "$ renderer" : "function(v) { return String.format('{0}', v); }", + "$ xns" : "Roo.grid", + "* prop" : "colModel[]", + "dataIndex" : "action" + }, + { + "xtype" : "ColumnModel", + "width" : 100, + "header" : "IP", + "$ renderer" : "function(v) { return String.format('{0}', v); }", + "$ xns" : "Roo.grid", + "* prop" : "colModel[]", + "dataIndex" : "ipaddr" + }, + { + "xtype" : "ColumnModel", + "header" : "Affected", + "width" : 100, + "$ renderer" : "function(v, x, r) { \n return v ? String.format('{0}({1})', v, r.data.on_id) : ''; \n }", + "$ xns" : "Roo.grid", + "* prop" : "colModel[]", + "dataIndex" : "on_table" + }, + { + "xtype" : "ColumnModel", + "header" : "Remarks", + "width" : 300, + "$ renderer" : "function(v) { return String.format('{0}', v, Roo.util.Format.htmlEncode(v)); }", + "$ xns" : "Roo.grid", + "* prop" : "colModel[]", + "dataIndex" : "remarks" + } + ] } - ] + ] + } + ] + } + ] + } + ] } \ No newline at end of file diff --git a/Pman.Tab.AdminLogEvents.js b/Pman.Tab.AdminLogEvents.js index 92c1074..3bc9d5e 100644 --- a/Pman.Tab.AdminLogEvents.js +++ b/Pman.Tab.AdminLogEvents.js @@ -5,1339 +5,1361 @@ Roo.namespace('Pman.Tab'); Pman.Tab.AdminLogEvents = new Roo.XComponent({ - part : ["Admin", "LogEvents" ], - order : '001-Pman.Tab.AdminLogEvents', - region : 'center', - parent : 'Pman.Tab.AdminLogs', - name : "Admin - Logs - Events", - disabled : false, - permname : 'Admin.Logs', - _tree : function() - { - var _this = this; - var MODULE = this; - return { - layout : { - center : { - '|xns' : 'Roo', - xtype : 'LayoutRegion', - xns : Roo - }, - south : { - '|xns' : 'Roo', - autoScroll : true, - xtype : 'LayoutRegion', - xns : Roo, - split : true, - height : 150 - }, - '|xns' : 'Roo', - xtype : 'BorderLayout', - xns : Roo, - items : [ - { - '|xns' : 'Roo', - fitToFrame : true, - region : 'south', - xtype : 'ContentPanel', - xns : Roo, - listeners : { - render : function (_self) - { - _this.viewPanel = _self; - } - } - }, - { - grid : { - sm : { - '|xns' : 'Roo.grid', - xtype : 'RowSelectionModel', - singleSelect : true, - xns : Roo.grid, - listeners : { - afterselectionchange : function (_self) - { - // load detail log in _this.viewPanel; - if (!this.getSelected()) { - this.viewPanel.setContent("Nothing Selected"); - return; - } - var id = this.getSelected().data.id; - _this.viewPanel.load( { url : baseURL + "/Admin/EventView/" + id + ".html" }); - - } - } - }, - dataSource : { - reader : { - '|xns' : 'Roo.data', - id : 'id', - root : 'data', - xtype : 'JsonReader', - xns : Roo.data, - fields : [ - { - 'name': 'id', - 'type': 'int' - }, - { - 'name': 'person_name', - 'type': 'string' - }, - { - 'name': 'event_when', - 'type': 'date', - 'dateFormat': 'Y-m-d' - }, - { - 'name': 'action', - 'type': 'string' - }, - { - 'name': 'ipaddr', - 'type': 'string' - }, - { - 'name': 'on_id', - 'type': 'int' - }, - { - 'name': 'on_table', - 'type': 'string' - }, - { - 'name': 'person_id', - 'type': 'int' - }, - { - 'name': 'remarks', - 'type': 'string' - }, - { - 'name': 'person_id_id', - 'type': 'int' - }, - { - 'name': 'person_id_office_id', - 'type': 'int' - }, - { - 'name': 'person_id_name', - 'type': 'string' - }, - { - 'name': 'person_id_phone', - 'type': 'string' - }, - { - 'name': 'person_id_fax', - 'type': 'string' - }, - { - 'name': 'person_id_email', - 'type': 'string' - }, - { - 'name': 'person_id_company_id', - 'type': 'int' - }, - { - 'name': 'person_id_role', - 'type': 'string' - }, - { - 'name': 'person_id_active', - 'type': 'int' - }, - { - 'name': 'person_id_remarks', - 'type': 'string' - }, - { - 'name': 'person_id_passwd', - 'type': 'string' - }, - { - 'name': 'person_id_owner_id', - 'type': 'int' - }, - { - 'name': 'person_id_lang', - 'type': 'string' - }, - { - 'name': 'person_id_no_reset_sent', - 'type': 'int' - }, - { - 'name': 'person_id_action_type', - 'type': 'string' - }, - { - 'name': 'person_id_project_id', - 'type': 'int' - }, - { - 'name': 'person_id_deleted_by', - 'type': 'int' - }, - { - 'name': 'person_id_deleted_dt', - 'type': 'date' - } - ], - totalProperty : 'total' - }, - proxy : { - '|xns' : 'Roo.data', - url : baseURL + '/Roo/Events.php', - xtype : 'HttpProxy', - method : 'GET', - xns : Roo.data - }, - '|xns' : 'Roo.data', - xtype : 'Store', - remoteSort : true, - sortInfo : { field: 'event_when', direction: 'DESC'}, - xns : Roo.data, - listeners : { - beforeload : function (_self, o) - { - if (!Pman.buildCompleted) { - return false; - } - - - if (! _this.personSel) { - return false; - } - o.params = o.params || {}; - o.params.person_id = _this.personSel.getValue(); - o.params.person_table = _this.tableSel.getValue(); - var act = _this.actionSel.getValue(); - if (act.length) { - o.params.action = act; - } - var tbl = _this.affectSel.getValue(); - if (tbl.length) { - o.params.on_table = tbl; - } - act = _this.dateFrom.getValue(); - if (act.format) { - o.params['query[from]'] = act.format('Y-m-d'); - } - act = _this.dateTo.getValue(); - if (act.format) { - o.params['query[to]'] = act.format('Y-m-d'); - } - - - /* - act = _this.groupedCombo.getValue(); - o.params['query[grouped]'] = act; - if (o.params['query[grouped]'] == 'gr') { - - if (!tbl.length) { - Roo.MessageBox.alert("Error", "Select a table to group results on"); - return false; - } - // o.params['_columns'] = - o.params['_distinct'] = 'on_id'; - - - } - - */ - - - } - }, - items : [ - ] + _strings : { + '231bc72756b5e6de492aaaa1577f61b1' :"Remarks", + '2ea72778ebaacc973260c88837dd7a2f' :"Displaying Events {0} - {1} of {2}", + '87f9f735a1d36793ceaecd4e47124b63' :"Events", + '1b7f7d24575cdbfadb83b9587fa1bf97' :"#id", + 'a12a3079e14ced46e69ba52b8a90b21a' :"IP", + '1243daf593fa297e07ab03bf06d925af' :"Searching...", + '01bd6a16732dfa2b760dc8566c58afae' :"Download to Excel", + '498f79c4c5bbde77f1bceb6c86fd0f6d' :"Show", + '037fd50b0e85bb65995ca7125d06c7cd' :"Select Person Table", + 'fd7535ce3979bb8547e2c01689db0767' :"Select Person ", + '679308a758de538c5f39c4c6cdba6593' :"Select Affects", + '8f7f93630c366dc55aec88eb8e9640d0' :"Staff", + 'a8929eb5c1553d3f70497f862d25d0ce' :"Select Action", + '39b9e051f9fe75e65c7a330bb00499d4' :"Date Range", + '4e97aeeaa8b15ca1180fcd1f3ac478d1' :"When", + '004bf6c9a40003140292e97330236c53' :"Action", + '90e4ac2e5a22e53df63b6b186d8727ba' :"No Events found", + '2c92a9a6a5dbf570825e62eabcdecd8d' :"Affected" + }, - }, - footer : { - '|xns' : 'Roo', - pageSize : 25, - xtype : 'PagingToolbar', - emptyMsg : "No Events found", - xns : Roo, - displayInfo : true, - displayMsg : "Displaying Events {0} - {1} of {2}", - items : [ - { - '|xns' : 'Roo.Toolbar', - text : "Download to Excel", - xtype : 'Button', - xns : Roo.Toolbar, - listeners : { - click : function (_self, e) - { - - var params = { - 'sort' : 'event_when', - 'dir' : 'DESC', - 'start' : 0, - 'limit' : 900, - person_id : _this.personSel.getValue(), - 'csvTitles[0]' : 'When', 'csvCols[0]' : 'event_when', - 'csvTitles[1]' : 'Staff', 'csvCols[1]' : 'person_id_name', - 'csvTitles[2]' : 'Action', 'csvCols[2]' : 'action', - 'csvTitles[3]' : 'Record ID', 'csvCols[3]' : 'on_id' , - 'csvTitles[4]' : 'Record Type', 'csvCols[4]' : 'on_table', - 'csvTitles[5]' : 'Remarks', 'csvCols[5]' : 'remarks' - } - - params.person_id = _this.personSel.getValue(); - var act = _this.actionSel.getValue(); - if (act.length) { - params.action = act; - } - var tbl = _this.affectSel.getValue(); - if (tbl.length) { - params.on_table = tbl; - } - act = _this.dateFrom.getValue(); - if (act.format) { - params['query[from]'] = act.format('Y-m-d'); - } - act = _this.dateTo.getValue(); - if (act.format) { - params['query[to]'] = act.format('Y-m-d'); - } - params.limit = 9999; - - - new Pman.download({ - url : baseURL + '/Roo/Events.php', - params : params , - newWindow: true - - }); - } - } - } - ] + part : ["Admin", "LogEvents" ], + order : '001-Pman.Tab.AdminLogEvents', + region : 'center', + parent : 'Pman.Tab.AdminLogs', + name : "Admin - Logs - Events", + disabled : false, + permname : 'Admin.Logs', + _tree : function() + { + var _this = this; + var MODULE = this; + return { + layout : { + center : { + '|xns' : 'Roo', + xns : Roo, + xtype : 'LayoutRegion' + }, + south : { + '|xns' : 'Roo', + autoScroll : true, + height : 150, + split : true, + xns : Roo, + xtype : 'LayoutRegion' + }, + '|xns' : 'Roo', + xns : Roo, + xtype : 'BorderLayout', + items : [ + { + '|xns' : 'Roo', + fitToFrame : true, + region : 'south', + xns : Roo, + xtype : 'ContentPanel', + listeners : { + render : function (_self) + { + _this.viewPanel = _self; + } + } + }, + { + grid : { + sm : { + '|xns' : 'Roo.grid', + singleSelect : true, + xns : Roo.grid, + xtype : 'RowSelectionModel', + listeners : { + afterselectionchange : function (_self) + { + // load detail log in _this.viewPanel; + if (!this.getSelected()) { + this.viewPanel.setContent("Nothing Selected"); + return; + } + var id = this.getSelected().data.id; + _this.viewPanel.load( { url : baseURL + "/Admin/EventView/" + id + ".html" }); + + } + } + }, + dataSource : { + reader : { + '|xns' : 'Roo.data', + fields : [ + { + 'name': 'id', + 'type': 'int' + }, + { + 'name': 'person_name', + 'type': 'string' + }, + { + 'name': 'event_when', + 'type': 'date', + 'dateFormat': 'Y-m-d' + }, + { + 'name': 'action', + 'type': 'string' + }, + { + 'name': 'ipaddr', + 'type': 'string' + }, + { + 'name': 'on_id', + 'type': 'int' + }, + { + 'name': 'on_table', + 'type': 'string' + }, + { + 'name': 'person_id', + 'type': 'int' + }, + { + 'name': 'remarks', + 'type': 'string' + }, + { + 'name': 'person_id_id', + 'type': 'int' + }, + { + 'name': 'person_id_office_id', + 'type': 'int' + }, + { + 'name': 'person_id_name', + 'type': 'string' + }, + { + 'name': 'person_id_phone', + 'type': 'string' + }, + { + 'name': 'person_id_fax', + 'type': 'string' + }, + { + 'name': 'person_id_email', + 'type': 'string' + }, + { + 'name': 'person_id_company_id', + 'type': 'int' + }, + { + 'name': 'person_id_role', + 'type': 'string' + }, + { + 'name': 'person_id_active', + 'type': 'int' + }, + { + 'name': 'person_id_remarks', + 'type': 'string' + }, + { + 'name': 'person_id_passwd', + 'type': 'string' + }, + { + 'name': 'person_id_owner_id', + 'type': 'int' + }, + { + 'name': 'person_id_lang', + 'type': 'string' + }, + { + 'name': 'person_id_no_reset_sent', + 'type': 'int' + }, + { + 'name': 'person_id_action_type', + 'type': 'string' + }, + { + 'name': 'person_id_project_id', + 'type': 'int' + }, + { + 'name': 'person_id_deleted_by', + 'type': 'int' + }, + { + 'name': 'person_id_deleted_dt', + 'type': 'date' + } + ], + id : 'id', + root : 'data', + totalProperty : 'total', + xns : Roo.data, + xtype : 'JsonReader' + }, + proxy : { + '|xns' : 'Roo.data', + method : 'GET', + url : baseURL + '/Roo/Events.php', + xns : Roo.data, + xtype : 'HttpProxy' + }, + '|xns' : 'Roo.data', + remoteSort : true, + sortInfo : { field: 'event_when', direction: 'DESC'}, + xns : Roo.data, + xtype : 'Store', + listeners : { + beforeload : function (_self, o) + { + if (!Pman.buildCompleted) { + return false; + } + + + if (! _this.personSel) { + return false; + } + o.params = o.params || {}; + o.params.person_id = _this.personSel.getValue(); + o.params.person_table = _this.tableSel.getValue(); + var act = _this.actionSel.getValue(); + if (act.length) { + o.params.action = act; + } + var tbl = _this.affectSel.getValue(); + if (tbl.length) { + o.params.on_table = tbl; + } + act = _this.dateFrom.getValue(); + if (act.format) { + o.params['query[from]'] = act.format('Y-m-d'); + } + act = _this.dateTo.getValue(); + if (act.format) { + o.params['query[to]'] = act.format('Y-m-d'); + } + + + /* + act = _this.groupedCombo.getValue(); + o.params['query[grouped]'] = act; + if (o.params['query[grouped]'] == 'gr') { + + if (!tbl.length) { + Roo.MessageBox.alert("Error", "Select a table to group results on"); + return false; + } + // o.params['_columns'] = + o.params['_distinct'] = 'on_id'; + + + } + + */ + + + } + }, + items : [ - }, - toolbar : { - '|xns' : 'Roo', - xtype : 'Toolbar', - xns : Roo, - items : [ - { - '|xns' : 'Roo.Toolbar', - text : "Show", - xtype : 'TextItem', - xns : Roo.Toolbar - }, - { - store : { - '|xns' : 'Roo.data', - data : (function() { - - if(typeof(uiConfig) == 'undefined' || typeof(uiConfig.events_person_table) == 'undefined' || !uiConfig.events_person_table.length){ - - return []; - } - - return uiConfig.events_person_table; - - })(), - xtype : 'SimpleStore', - fields : [ 'value' ], - xns : Roo.data, - isLocal : true - }, - '|xns' : 'Roo.form', - listWidth : 300, - triggerAction : 'all', - forceSelection : true, - selectOnFocus : true, - pageSize : 20, - displayField : 'value', - emptyText : "Select Person Table", - minChars : 2, - valueField : 'value', - xtype : 'ComboBox', - allowBlank : true, - typeAhead : true, - alwaysQuery : true, - editable : false, - width : 150, - xns : Roo.form, - name : 'person_table', - qtip : "Select Person Table", - tpl : '
{value}
', - loadingText : "Searching...", - listeners : { - render : function (_self) - { - _this.tableSel = _self; - }, - select : function (combo, record, index) - { - _this.grid.footer.onClick('first'); - } - }, - items : [ + ] - ] + }, + footer : { + '|xns' : 'Roo', + displayInfo : true, + displayMsg : _this._strings['2ea72778ebaacc973260c88837dd7a2f'], + emptyMsg : _this._strings['90e4ac2e5a22e53df63b6b186d8727ba'], + pageSize : 25, + xns : Roo, + xtype : 'PagingToolbar', + items : [ + { + '|xns' : 'Roo.Toolbar', + text : _this._strings['01bd6a16732dfa2b760dc8566c58afae'], + xns : Roo.Toolbar, + xtype : 'Button', + listeners : { + click : function (_self, e) + { + + var params = { + 'sort' : 'event_when', + 'dir' : 'DESC', + 'start' : 0, + 'limit' : 900, + person_id : _this.personSel.getValue(), + 'csvTitles[0]' : 'When', 'csvCols[0]' : 'event_when', + 'csvTitles[1]' : 'Staff', 'csvCols[1]' : 'person_id_name', + 'csvTitles[2]' : 'Action', 'csvCols[2]' : 'action', + 'csvTitles[3]' : 'Record ID', 'csvCols[3]' : 'on_id' , + 'csvTitles[4]' : 'Record Type', 'csvCols[4]' : 'on_table', + 'csvTitles[5]' : 'Remarks', 'csvCols[5]' : 'remarks' + } + + params.person_id = _this.personSel.getValue(); + var act = _this.actionSel.getValue(); + if (act.length) { + params.action = act; + } + var tbl = _this.affectSel.getValue(); + if (tbl.length) { + params.on_table = tbl; + } + act = _this.dateFrom.getValue(); + if (act.format) { + params['query[from]'] = act.format('Y-m-d'); + } + act = _this.dateTo.getValue(); + if (act.format) { + params['query[to]'] = act.format('Y-m-d'); + } + params.limit = 9999; + + + new Pman.download({ + url : baseURL + '/Roo/Events.php', + params : params , + newWindow: true + + }); + } + } + } + ] - }, - { - store : { - proxy : { - '|xns' : 'Roo.data', - url : baseURL + '/Roo/Person.php', - method : 'GET', - xtype : 'HttpProxy', - xns : Roo.data - }, - reader : { - '|xns' : 'Roo.data', - id : 'id', - root : 'data', - xtype : 'JsonReader', - fields : [ - { - 'name': 'id', - 'type': 'int' - }, - { - 'name': 'office_id', - 'type': 'int' - }, - { - 'name': 'name', - 'type': 'string' - }, - { - 'name': 'phone', - 'type': 'string' - }, - { - 'name': 'fax', - 'type': 'string' - }, - { - 'name': 'email', - 'type': 'string' - }, - { - 'name': 'company_id', - 'type': 'int' - }, - { - 'name': 'role', - 'type': 'string' - }, - { - 'name': 'active', - 'type': 'int' - }, - { - 'name': 'remarks', - 'type': 'string' - }, - { - 'name': 'passwd', - 'type': 'string' - }, - { - 'name': 'owner_id', - 'type': 'int' - }, - { - 'name': 'lang', - 'type': 'string' - }, - { - 'name': 'no_reset_sent', - 'type': 'int' - }, - { - 'name': 'action_type', - 'type': 'string' - }, - { - 'name': 'project_id', - 'type': 'int' - }, - { - 'name': 'deleted_by', - 'type': 'int' - }, - { - 'name': 'deleted_dt', - 'type': 'date', - 'dateFormat': 'Y-m-d' - }, - { - 'name': 'office_id_id', - 'type': 'int' - }, - { - 'name': 'office_id_company_id', - 'type': 'int' - }, - { - 'name': 'office_id_name', - 'type': 'string' - }, - { - 'name': 'office_id_address', - 'type': 'string' - }, - { - 'name': 'office_id_phone', - 'type': 'string' - }, - { - 'name': 'office_id_fax', - 'type': 'string' - }, - { - 'name': 'office_id_email', - 'type': 'string' - }, - { - 'name': 'office_id_role', - 'type': 'string' - }, - { - 'name': 'company_id_code', - 'type': 'string' - }, - { - 'name': 'company_id_name', - 'type': 'string' - }, - { - 'name': 'company_id_remarks', - 'type': 'string' - }, - { - 'name': 'company_id_owner_id', - 'type': 'int' - }, - { - 'name': 'company_id_address', - 'type': 'string' - }, - { - 'name': 'company_id_tel', - 'type': 'string' - }, - { - 'name': 'company_id_fax', - 'type': 'string' - }, - { - 'name': 'company_id_email', - 'type': 'string' - }, - { - 'name': 'company_id_id', - 'type': 'int' - }, - { - 'name': 'company_id_isOwner', - 'type': 'int' - }, - { - 'name': 'company_id_logo_id', - 'type': 'int' - }, - { - 'name': 'company_id_background_color', - 'type': 'string' - }, - { - 'name': 'company_id_comptype', - 'type': 'string' - }, - { - 'name': 'company_id_url', - 'type': 'string' - }, - { - 'name': 'company_id_main_office_id', - 'type': 'int' - }, - { - 'name': 'company_id_created_by', - 'type': 'int' - }, - { - 'name': 'company_id_created_dt', - 'type': 'date' - }, - { - 'name': 'company_id_updated_by', - 'type': 'int' - }, - { - 'name': 'company_id_updated_dt', - 'type': 'date' - }, - { - 'name': 'company_id_passwd', - 'type': 'string' - }, - { - 'name': 'company_id_dispatch_port', - 'type': 'string' - }, - { - 'name': 'company_id_province', - 'type': 'string' - }, - { - 'name': 'company_id_country', - 'type': 'string' - }, - { - 'name': 'project_id_id', - 'type': 'int' - }, - { - 'name': 'project_id_name', - 'type': 'string' - }, - { - 'name': 'project_id_remarks', - 'type': 'string' - }, - { - 'name': 'project_id_owner_id', - 'type': 'int' - }, - { - 'name': 'project_id_code', - 'type': 'string' - }, - { - 'name': 'project_id_active', - 'type': 'int' - }, - { - 'name': 'project_id_type', - 'type': 'string' - }, - { - 'name': 'project_id_client_id', - 'type': 'int' - }, - { - 'name': 'project_id_team_id', - 'type': 'int' - }, - { - 'name': 'project_id_file_location', - 'type': 'string' - }, - { - 'name': 'project_id_open_date', - 'type': 'date' - }, - { - 'name': 'project_id_open_by', - 'type': 'int' - }, - { - 'name': 'project_id_close_date', - 'type': 'date' - }, - { - 'name': 'project_id_countries', - 'type': 'string' - }, - { - 'name': 'project_id_languages', - 'type': 'string' - }, - { - 'name': 'project_id_agency_id', - 'type': 'int' - }, - { - 'name': 'owner_id_id', - 'type': 'int' - }, - { - 'name': 'owner_id_office_id', - 'type': 'int' - }, - { - 'name': 'owner_id_name', - 'type': 'string' - }, - { - 'name': 'owner_id_phone', - 'type': 'string' - }, - { - 'name': 'owner_id_fax', - 'type': 'string' - }, - { - 'name': 'owner_id_email', - 'type': 'string' - }, - { - 'name': 'owner_id_company_id', - 'type': 'int' - }, - { - 'name': 'owner_id_role', - 'type': 'string' - }, - { - 'name': 'owner_id_active', - 'type': 'int' - }, - { - 'name': 'owner_id_remarks', - 'type': 'string' - }, - { - 'name': 'owner_id_passwd', - 'type': 'string' - }, - { - 'name': 'owner_id_owner_id', - 'type': 'int' - }, - { - 'name': 'owner_id_lang', - 'type': 'string' - }, - { - 'name': 'owner_id_no_reset_sent', - 'type': 'int' - }, - { - 'name': 'owner_id_action_type', - 'type': 'string' - }, - { - 'name': 'owner_id_project_id', - 'type': 'int' - }, - { - 'name': 'owner_id_deleted_by', - 'type': 'int' - }, - { - 'name': 'owner_id_deleted_dt', - 'type': 'date' - } - ], - xns : Roo.data, - totalProperty : 'total' - }, - '|xns' : 'Roo.data', - xtype : 'Store', - remoteSort : true, - sortInfo : { field : 'name' , direction : 'ASC' }, - xns : Roo.data, - listeners : { - beforeload : function (_self, o) - { - o.params = o.params || {}; - o.params.company_id = Pman.Login.authUser.company_id; - } - }, - items : [ + }, + toolbar : { + '|xns' : 'Roo', + xns : Roo, + xtype : 'Toolbar', + items : [ + { + '|xns' : 'Roo.Toolbar', + text : _this._strings['498f79c4c5bbde77f1bceb6c86fd0f6d'], + xns : Roo.Toolbar, + xtype : 'TextItem' + }, + { + store : { + '|xns' : 'Roo.data', + data : (function() { + + if(typeof(uiConfig) == 'undefined' || typeof(uiConfig.events_person_table) == 'undefined' || !uiConfig.events_person_table.length){ + + return []; + } + + return uiConfig.events_person_table; + + })(), + fields : [ 'value' ], + isLocal : true, + xns : Roo.data, + xtype : 'SimpleStore' + }, + '|xns' : 'Roo.form', + allowBlank : true, + alwaysQuery : true, + displayField : 'value', + editable : false, + emptyText : _this._strings['037fd50b0e85bb65995ca7125d06c7cd'], + forceSelection : true, + listWidth : 300, + loadingText : _this._strings['1243daf593fa297e07ab03bf06d925af'], + minChars : 2, + name : 'person_table', + pageSize : 20, + qtip : _this._strings['037fd50b0e85bb65995ca7125d06c7cd'], + selectOnFocus : true, + tpl : '
{value}
', + triggerAction : 'all', + typeAhead : true, + valueField : 'value', + width : 150, + xns : Roo.form, + xtype : 'ComboBox', + listeners : { + render : function (_self) + { + _this.tableSel = _self; + }, + select : function (combo, record, index) + { + _this.grid.footer.onClick('first'); + } + }, + items : [ - ] + ] - }, - '|xns' : 'Roo.form', - listWidth : 600, - triggerAction : 'all', - fieldLabel : 'Person ', - forceSelection : true, - selectOnFocus : true, - pageSize : 20, - displayField : 'name', - emptyText : "Select Person ", - minChars : 2, - valueField : 'id', - xtype : 'ComboBox', - allowBlank : true, - typeAhead : true, - editable : true, - width : 150, - xns : Roo.form, - name : 'person_id_name', - qtip : "Select Person ", - queryParam : 'query[name]', - tpl : '
{name} ({company_id_name}) <{email}>
', - loadingText : "Searching...", - listeners : { - render : function (_self) - { - _this.personSel = _self; - }, - select : function (combo, record, index) - { - _this.grid.footer.onClick('first'); - - } - }, - items : [ + }, + { + store : { + proxy : { + '|xns' : 'Roo.data', + method : 'GET', + url : baseURL + '/Roo/Person.php', + xns : Roo.data, + xtype : 'HttpProxy' + }, + reader : { + '|xns' : 'Roo.data', + fields : [ + { + 'name': 'id', + 'type': 'int' + }, + { + 'name': 'office_id', + 'type': 'int' + }, + { + 'name': 'name', + 'type': 'string' + }, + { + 'name': 'phone', + 'type': 'string' + }, + { + 'name': 'fax', + 'type': 'string' + }, + { + 'name': 'email', + 'type': 'string' + }, + { + 'name': 'company_id', + 'type': 'int' + }, + { + 'name': 'role', + 'type': 'string' + }, + { + 'name': 'active', + 'type': 'int' + }, + { + 'name': 'remarks', + 'type': 'string' + }, + { + 'name': 'passwd', + 'type': 'string' + }, + { + 'name': 'owner_id', + 'type': 'int' + }, + { + 'name': 'lang', + 'type': 'string' + }, + { + 'name': 'no_reset_sent', + 'type': 'int' + }, + { + 'name': 'action_type', + 'type': 'string' + }, + { + 'name': 'project_id', + 'type': 'int' + }, + { + 'name': 'deleted_by', + 'type': 'int' + }, + { + 'name': 'deleted_dt', + 'type': 'date', + 'dateFormat': 'Y-m-d' + }, + { + 'name': 'office_id_id', + 'type': 'int' + }, + { + 'name': 'office_id_company_id', + 'type': 'int' + }, + { + 'name': 'office_id_name', + 'type': 'string' + }, + { + 'name': 'office_id_address', + 'type': 'string' + }, + { + 'name': 'office_id_phone', + 'type': 'string' + }, + { + 'name': 'office_id_fax', + 'type': 'string' + }, + { + 'name': 'office_id_email', + 'type': 'string' + }, + { + 'name': 'office_id_role', + 'type': 'string' + }, + { + 'name': 'company_id_code', + 'type': 'string' + }, + { + 'name': 'company_id_name', + 'type': 'string' + }, + { + 'name': 'company_id_remarks', + 'type': 'string' + }, + { + 'name': 'company_id_owner_id', + 'type': 'int' + }, + { + 'name': 'company_id_address', + 'type': 'string' + }, + { + 'name': 'company_id_tel', + 'type': 'string' + }, + { + 'name': 'company_id_fax', + 'type': 'string' + }, + { + 'name': 'company_id_email', + 'type': 'string' + }, + { + 'name': 'company_id_id', + 'type': 'int' + }, + { + 'name': 'company_id_isOwner', + 'type': 'int' + }, + { + 'name': 'company_id_logo_id', + 'type': 'int' + }, + { + 'name': 'company_id_background_color', + 'type': 'string' + }, + { + 'name': 'company_id_comptype', + 'type': 'string' + }, + { + 'name': 'company_id_url', + 'type': 'string' + }, + { + 'name': 'company_id_main_office_id', + 'type': 'int' + }, + { + 'name': 'company_id_created_by', + 'type': 'int' + }, + { + 'name': 'company_id_created_dt', + 'type': 'date' + }, + { + 'name': 'company_id_updated_by', + 'type': 'int' + }, + { + 'name': 'company_id_updated_dt', + 'type': 'date' + }, + { + 'name': 'company_id_passwd', + 'type': 'string' + }, + { + 'name': 'company_id_dispatch_port', + 'type': 'string' + }, + { + 'name': 'company_id_province', + 'type': 'string' + }, + { + 'name': 'company_id_country', + 'type': 'string' + }, + { + 'name': 'project_id_id', + 'type': 'int' + }, + { + 'name': 'project_id_name', + 'type': 'string' + }, + { + 'name': 'project_id_remarks', + 'type': 'string' + }, + { + 'name': 'project_id_owner_id', + 'type': 'int' + }, + { + 'name': 'project_id_code', + 'type': 'string' + }, + { + 'name': 'project_id_active', + 'type': 'int' + }, + { + 'name': 'project_id_type', + 'type': 'string' + }, + { + 'name': 'project_id_client_id', + 'type': 'int' + }, + { + 'name': 'project_id_team_id', + 'type': 'int' + }, + { + 'name': 'project_id_file_location', + 'type': 'string' + }, + { + 'name': 'project_id_open_date', + 'type': 'date' + }, + { + 'name': 'project_id_open_by', + 'type': 'int' + }, + { + 'name': 'project_id_close_date', + 'type': 'date' + }, + { + 'name': 'project_id_countries', + 'type': 'string' + }, + { + 'name': 'project_id_languages', + 'type': 'string' + }, + { + 'name': 'project_id_agency_id', + 'type': 'int' + }, + { + 'name': 'owner_id_id', + 'type': 'int' + }, + { + 'name': 'owner_id_office_id', + 'type': 'int' + }, + { + 'name': 'owner_id_name', + 'type': 'string' + }, + { + 'name': 'owner_id_phone', + 'type': 'string' + }, + { + 'name': 'owner_id_fax', + 'type': 'string' + }, + { + 'name': 'owner_id_email', + 'type': 'string' + }, + { + 'name': 'owner_id_company_id', + 'type': 'int' + }, + { + 'name': 'owner_id_role', + 'type': 'string' + }, + { + 'name': 'owner_id_active', + 'type': 'int' + }, + { + 'name': 'owner_id_remarks', + 'type': 'string' + }, + { + 'name': 'owner_id_passwd', + 'type': 'string' + }, + { + 'name': 'owner_id_owner_id', + 'type': 'int' + }, + { + 'name': 'owner_id_lang', + 'type': 'string' + }, + { + 'name': 'owner_id_no_reset_sent', + 'type': 'int' + }, + { + 'name': 'owner_id_action_type', + 'type': 'string' + }, + { + 'name': 'owner_id_project_id', + 'type': 'int' + }, + { + 'name': 'owner_id_deleted_by', + 'type': 'int' + }, + { + 'name': 'owner_id_deleted_dt', + 'type': 'date' + } + ], + id : 'id', + root : 'data', + totalProperty : 'total', + xns : Roo.data, + xtype : 'JsonReader' + }, + '|xns' : 'Roo.data', + remoteSort : true, + sortInfo : { field : 'name' , direction : 'ASC' }, + xns : Roo.data, + xtype : 'Store', + listeners : { + beforeload : function (_self, o) + { + o.params = o.params || {}; + o.params.company_id = Pman.Login.authUser.company_id; + } + }, + items : [ - ] + ] - }, - { - store : { - proxy : { - '|xns' : 'Roo.data', - url : baseURL + '/Roo/Events.php', - method : 'GET', - xtype : 'HttpProxy', - xns : Roo.data - }, - reader : { - '|xns' : 'Roo.data', - id : 'id', - root : 'data', - xtype : 'JsonReader', - fields : [ - { - 'name': 'id', - 'type': 'int' - }, - { - 'name': 'person_name', - 'type': 'string' - }, - { - 'name': 'event_when', - 'type': 'date', - 'dateFormat': 'Y-m-d' - }, - { - 'name': 'action', - 'type': 'string' - }, - { - 'name': 'ipaddr', - 'type': 'string' - }, - { - 'name': 'on_id', - 'type': 'int' - }, - { - 'name': 'on_table', - 'type': 'string' - }, - { - 'name': 'person_id', - 'type': 'int' - }, - { - 'name': 'remarks', - 'type': 'string' - }, - { - 'name': 'person_id_id', - 'type': 'int' - }, - { - 'name': 'person_id_office_id', - 'type': 'int' - }, - { - 'name': 'person_id_name', - 'type': 'string' - }, - { - 'name': 'person_id_phone', - 'type': 'string' - }, - { - 'name': 'person_id_fax', - 'type': 'string' - }, - { - 'name': 'person_id_email', - 'type': 'string' - }, - { - 'name': 'person_id_company_id', - 'type': 'int' - }, - { - 'name': 'person_id_role', - 'type': 'string' - }, - { - 'name': 'person_id_active', - 'type': 'int' - }, - { - 'name': 'person_id_remarks', - 'type': 'string' - }, - { - 'name': 'person_id_passwd', - 'type': 'string' - }, - { - 'name': 'person_id_owner_id', - 'type': 'int' - }, - { - 'name': 'person_id_lang', - 'type': 'string' - }, - { - 'name': 'person_id_no_reset_sent', - 'type': 'int' - }, - { - 'name': 'person_id_action_type', - 'type': 'string' - }, - { - 'name': 'person_id_project_id', - 'type': 'int' - }, - { - 'name': 'person_id_deleted_by', - 'type': 'int' - }, - { - 'name': 'person_id_deleted_dt', - 'type': 'date' - } - ], - xns : Roo.data, - totalProperty : 'total' - }, - '|xns' : 'Roo.data', - xtype : 'Store', - remoteSort : true, - sortInfo : { field : 'action' , direction : 'ASC' }, - xns : Roo.data, - listeners : { - beforeload : function (_self, o) - { - o.params = o.params || {}; - // staff can see all logs, other companies can only see their own. - if (Pman.Login.authUser.company_id_comptype != 'OWNER') { - o.params.company_id = Pman.Login.authUser.company_id; - } - o.params._distinct = 'action'; - o.params._columns ='action'; - } - }, - items : [ + }, + '|xns' : 'Roo.form', + allowBlank : true, + displayField : 'name', + editable : true, + emptyText : _this._strings['fd7535ce3979bb8547e2c01689db0767'], + fieldLabel : 'Person ', + forceSelection : true, + listWidth : 600, + loadingText : _this._strings['1243daf593fa297e07ab03bf06d925af'], + minChars : 2, + name : 'person_id_name', + pageSize : 20, + qtip : _this._strings['fd7535ce3979bb8547e2c01689db0767'], + queryParam : 'query[name]', + selectOnFocus : true, + tpl : '
{name} ({company_id_name}) <{email}>
', + triggerAction : 'all', + typeAhead : true, + valueField : 'id', + width : 150, + xns : Roo.form, + xtype : 'ComboBox', + listeners : { + render : function (_self) + { + _this.personSel = _self; + }, + select : function (combo, record, index) + { + _this.grid.footer.onClick('first'); + + } + }, + items : [ - ] + ] - }, - '|xns' : 'Roo.form', - listWidth : 300, - triggerAction : 'all', - forceSelection : true, - selectOnFocus : true, - pageSize : 20, - displayField : 'action', - emptyText : "Select Action", - minChars : 2, - valueField : 'action', - xtype : 'ComboBox', - allowBlank : true, - typeAhead : true, - editable : true, - width : 150, - xns : Roo.form, - name : 'action', - qtip : "Select Action", - queryParam : 'query[action]', - tpl : '
{action}
', - loadingText : "Searching...", - listeners : { - render : function (_self) - { - _this.actionSel = _self; - }, - select : function (combo, record, index) - { - _this.grid.footer.onClick('first'); - } - }, - items : [ + }, + { + store : { + proxy : { + '|xns' : 'Roo.data', + method : 'GET', + url : baseURL + '/Roo/Events.php', + xns : Roo.data, + xtype : 'HttpProxy' + }, + reader : { + '|xns' : 'Roo.data', + fields : [ + { + 'name': 'id', + 'type': 'int' + }, + { + 'name': 'person_name', + 'type': 'string' + }, + { + 'name': 'event_when', + 'type': 'date', + 'dateFormat': 'Y-m-d' + }, + { + 'name': 'action', + 'type': 'string' + }, + { + 'name': 'ipaddr', + 'type': 'string' + }, + { + 'name': 'on_id', + 'type': 'int' + }, + { + 'name': 'on_table', + 'type': 'string' + }, + { + 'name': 'person_id', + 'type': 'int' + }, + { + 'name': 'remarks', + 'type': 'string' + }, + { + 'name': 'person_id_id', + 'type': 'int' + }, + { + 'name': 'person_id_office_id', + 'type': 'int' + }, + { + 'name': 'person_id_name', + 'type': 'string' + }, + { + 'name': 'person_id_phone', + 'type': 'string' + }, + { + 'name': 'person_id_fax', + 'type': 'string' + }, + { + 'name': 'person_id_email', + 'type': 'string' + }, + { + 'name': 'person_id_company_id', + 'type': 'int' + }, + { + 'name': 'person_id_role', + 'type': 'string' + }, + { + 'name': 'person_id_active', + 'type': 'int' + }, + { + 'name': 'person_id_remarks', + 'type': 'string' + }, + { + 'name': 'person_id_passwd', + 'type': 'string' + }, + { + 'name': 'person_id_owner_id', + 'type': 'int' + }, + { + 'name': 'person_id_lang', + 'type': 'string' + }, + { + 'name': 'person_id_no_reset_sent', + 'type': 'int' + }, + { + 'name': 'person_id_action_type', + 'type': 'string' + }, + { + 'name': 'person_id_project_id', + 'type': 'int' + }, + { + 'name': 'person_id_deleted_by', + 'type': 'int' + }, + { + 'name': 'person_id_deleted_dt', + 'type': 'date' + } + ], + id : 'id', + root : 'data', + totalProperty : 'total', + xns : Roo.data, + xtype : 'JsonReader' + }, + '|xns' : 'Roo.data', + remoteSort : true, + sortInfo : { field : 'action' , direction : 'ASC' }, + xns : Roo.data, + xtype : 'Store', + listeners : { + beforeload : function (_self, o) + { + o.params = o.params || {}; + // staff can see all logs, other companies can only see their own. + if (Pman.Login.authUser.company_id_comptype != 'OWNER') { + o.params.company_id = Pman.Login.authUser.company_id; + } + o.params._distinct = 'action'; + o.params._columns ='action'; + } + }, + items : [ - ] + ] - }, - { - store : { - proxy : { - '|xns' : 'Roo.data', - url : baseURL + '/Roo/Events.php', - method : 'GET', - xtype : 'HttpProxy', - xns : Roo.data - }, - reader : { - '|xns' : 'Roo.data', - id : 'id', - root : 'data', - xtype : 'JsonReader', - xns : Roo.data, - fields : [ - { - 'name': 'id', - 'type': 'int' - }, - { - 'name': 'person_name', - 'type': 'string' - }, - { - 'name': 'event_when', - 'type': 'date', - 'dateFormat': 'Y-m-d' - }, - { - 'name': 'action', - 'type': 'string' - }, - { - 'name': 'ipaddr', - 'type': 'string' - }, - { - 'name': 'on_id', - 'type': 'int' - }, - { - 'name': 'on_table', - 'type': 'string' - }, - { - 'name': 'person_id', - 'type': 'int' - }, - { - 'name': 'remarks', - 'type': 'string' - }, - { - 'name': 'person_id_id', - 'type': 'int' - }, - { - 'name': 'person_id_office_id', - 'type': 'int' - }, - { - 'name': 'person_id_name', - 'type': 'string' - }, - { - 'name': 'person_id_phone', - 'type': 'string' - }, - { - 'name': 'person_id_fax', - 'type': 'string' - }, - { - 'name': 'person_id_email', - 'type': 'string' - }, - { - 'name': 'person_id_company_id', - 'type': 'int' - }, - { - 'name': 'person_id_role', - 'type': 'string' - }, - { - 'name': 'person_id_active', - 'type': 'int' - }, - { - 'name': 'person_id_remarks', - 'type': 'string' - }, - { - 'name': 'person_id_passwd', - 'type': 'string' - }, - { - 'name': 'person_id_owner_id', - 'type': 'int' - }, - { - 'name': 'person_id_lang', - 'type': 'string' - }, - { - 'name': 'person_id_no_reset_sent', - 'type': 'int' - }, - { - 'name': 'person_id_action_type', - 'type': 'string' - }, - { - 'name': 'person_id_project_id', - 'type': 'int' - }, - { - 'name': 'person_id_deleted_by', - 'type': 'int' - }, - { - 'name': 'person_id_deleted_dt', - 'type': 'date' - } - ], - totalProperty : 'total' - }, - '|xns' : 'Roo.data', - xtype : 'Store', - remoteSort : true, - sortInfo : { field : 'on_table' , direction : 'ASC' }, - xns : Roo.data, - listeners : { - beforeload : function (_self, o) - { - o.params = o.params || {}; - // staff can see all logs, other companies can only see their own. - if (Pman.Login.authUser.company_id_comptype != 'OWNER') { - o.params.company_id = Pman.Login.authUser.company_id; - } - o.params._distinct = 'on_table'; - o.params._columns ='on_table'; - } - }, - items : [ + }, + '|xns' : 'Roo.form', + allowBlank : true, + displayField : 'action', + editable : true, + emptyText : _this._strings['a8929eb5c1553d3f70497f862d25d0ce'], + forceSelection : true, + listWidth : 300, + loadingText : _this._strings['1243daf593fa297e07ab03bf06d925af'], + minChars : 2, + name : 'action', + pageSize : 20, + qtip : _this._strings['a8929eb5c1553d3f70497f862d25d0ce'], + queryParam : 'query[action]', + selectOnFocus : true, + tpl : '
{action}
', + triggerAction : 'all', + typeAhead : true, + valueField : 'action', + width : 150, + xns : Roo.form, + xtype : 'ComboBox', + listeners : { + render : function (_self) + { + _this.actionSel = _self; + }, + select : function (combo, record, index) + { + _this.grid.footer.onClick('first'); + } + }, + items : [ - ] + ] - }, - '|xns' : 'Roo.form', - listWidth : 300, - triggerAction : 'all', - forceSelection : true, - selectOnFocus : true, - pageSize : 20, - displayField : 'on_table', - emptyText : "Select Affects", - minChars : 2, - valueField : 'action', - xtype : 'ComboBox', - allowBlank : true, - typeAhead : true, - editable : true, - width : 150, - xns : Roo.form, - name : 'on_table', - qtip : "Select Action", - queryParam : 'query[on_table]', - tpl : '
{on_table}
', - loadingText : "Searching...", - listeners : { - render : function (_self) - { - _this.affectSel = _self; - }, - select : function (combo, record, index) - { - _this.grid.footer.onClick('first'); - } - }, - items : [ + }, + { + store : { + proxy : { + '|xns' : 'Roo.data', + method : 'GET', + url : baseURL + '/Roo/Events.php', + xns : Roo.data, + xtype : 'HttpProxy' + }, + reader : { + '|xns' : 'Roo.data', + fields : [ + { + 'name': 'id', + 'type': 'int' + }, + { + 'name': 'person_name', + 'type': 'string' + }, + { + 'name': 'event_when', + 'type': 'date', + 'dateFormat': 'Y-m-d' + }, + { + 'name': 'action', + 'type': 'string' + }, + { + 'name': 'ipaddr', + 'type': 'string' + }, + { + 'name': 'on_id', + 'type': 'int' + }, + { + 'name': 'on_table', + 'type': 'string' + }, + { + 'name': 'person_id', + 'type': 'int' + }, + { + 'name': 'remarks', + 'type': 'string' + }, + { + 'name': 'person_id_id', + 'type': 'int' + }, + { + 'name': 'person_id_office_id', + 'type': 'int' + }, + { + 'name': 'person_id_name', + 'type': 'string' + }, + { + 'name': 'person_id_phone', + 'type': 'string' + }, + { + 'name': 'person_id_fax', + 'type': 'string' + }, + { + 'name': 'person_id_email', + 'type': 'string' + }, + { + 'name': 'person_id_company_id', + 'type': 'int' + }, + { + 'name': 'person_id_role', + 'type': 'string' + }, + { + 'name': 'person_id_active', + 'type': 'int' + }, + { + 'name': 'person_id_remarks', + 'type': 'string' + }, + { + 'name': 'person_id_passwd', + 'type': 'string' + }, + { + 'name': 'person_id_owner_id', + 'type': 'int' + }, + { + 'name': 'person_id_lang', + 'type': 'string' + }, + { + 'name': 'person_id_no_reset_sent', + 'type': 'int' + }, + { + 'name': 'person_id_action_type', + 'type': 'string' + }, + { + 'name': 'person_id_project_id', + 'type': 'int' + }, + { + 'name': 'person_id_deleted_by', + 'type': 'int' + }, + { + 'name': 'person_id_deleted_dt', + 'type': 'date' + } + ], + id : 'id', + root : 'data', + totalProperty : 'total', + xns : Roo.data, + xtype : 'JsonReader' + }, + '|xns' : 'Roo.data', + remoteSort : true, + sortInfo : { field : 'on_table' , direction : 'ASC' }, + xns : Roo.data, + xtype : 'Store', + listeners : { + beforeload : function (_self, o) + { + o.params = o.params || {}; + // staff can see all logs, other companies can only see their own. + if (Pman.Login.authUser.company_id_comptype != 'OWNER') { + o.params.company_id = Pman.Login.authUser.company_id; + } + o.params._distinct = 'on_table'; + o.params._columns ='on_table'; + } + }, + items : [ + + ] + + }, + '|xns' : 'Roo.form', + allowBlank : true, + displayField : 'on_table', + editable : true, + emptyText : _this._strings['679308a758de538c5f39c4c6cdba6593'], + forceSelection : true, + listWidth : 300, + loadingText : _this._strings['1243daf593fa297e07ab03bf06d925af'], + minChars : 2, + name : 'on_table', + pageSize : 20, + qtip : _this._strings['a8929eb5c1553d3f70497f862d25d0ce'], + queryParam : 'query[on_table]', + selectOnFocus : true, + tpl : '
{on_table}
', + triggerAction : 'all', + typeAhead : true, + valueField : 'action', + width : 150, + xns : Roo.form, + xtype : 'ComboBox', + listeners : { + render : function (_self) + { + _this.affectSel = _self; + }, + select : function (combo, record, index) + { + _this.grid.footer.onClick('first'); + } + }, + items : [ - ] + ] - }, - { - '|xns' : 'Roo.Toolbar', - text : "Date Range", - xtype : 'TextItem', - xns : Roo.Toolbar - }, - { - '|xns' : 'Roo.form', - format : 'Y-m-d', - xtype : 'DateField', - xns : Roo.form, - listeners : { - render : function (_self) - { - _this.dateFrom = _self; - }, - change : function (_self, newValue, oldValue) - { - _this.grid.footer.onClick('first'); - } - } - }, - { - '|xns' : 'Roo.form', - format : 'Y-m-d', - xtype : 'DateField', - xns : Roo.form, - listeners : { - render : function (_self) - { - _this.dateTo = _self; - }, - change : function (_self, newValue, oldValue) - { - _this.grid.footer.onClick('first'); - } - } - } - ] + }, + { + '|xns' : 'Roo.Toolbar', + text : _this._strings['39b9e051f9fe75e65c7a330bb00499d4'], + xns : Roo.Toolbar, + xtype : 'TextItem' + }, + { + '|xns' : 'Roo.form', + format : 'Y-m-d', + xns : Roo.form, + xtype : 'DateField', + listeners : { + change : function (_self, newValue, oldValue) + { + _this.grid.footer.onClick('first'); + }, + render : function (_self) + { + _this.dateFrom = _self; + } + } + }, + { + '|xns' : 'Roo.form', + format : 'Y-m-d', + xns : Roo.form, + xtype : 'DateField', + listeners : { + change : function (_self, newValue, oldValue) + { + _this.grid.footer.onClick('first'); + }, + render : function (_self) + { + _this.dateTo = _self; + } + } + } + ] - }, - '|xns' : 'Roo.grid', - autoExpandColumn : 'remarks', - xtype : 'Grid', - loadMask : true, - xns : Roo.grid, - colModel : [ - { - '|xns' : 'Roo.grid', - xtype : 'ColumnModel', - width : 100, - header : 'When', - renderer : function(v) { return v ? v.dateFormat('d/m/Y H:i') : ''; }, - xns : Roo.grid, - dataIndex : 'event_when' - }, + }, + '|xns' : 'Roo.grid', + autoExpandColumn : 'remarks', + loadMask : true, + xns : Roo.grid, + xtype : 'Grid', + colModel : [ + { + '|xns' : 'Roo.grid', + dataIndex : 'event_when', + header : _this._strings['4e97aeeaa8b15ca1180fcd1f3ac478d1'], + renderer : function(v) { return v ? v.dateFormat('d/m/Y H:i') : ''; }, + width : 100, + xns : Roo.grid, + xtype : 'ColumnModel' + }, { - '|xns' : 'Roo.grid', - xtype : 'ColumnModel', - width : 100, - header : '#id', - xns : Roo.grid, - dataIndex : 'id' - }, + '|xns' : 'Roo.grid', + dataIndex : 'id', + header : _this._strings['1b7f7d24575cdbfadb83b9587fa1bf97'], + width : 100, + xns : Roo.grid, + xtype : 'ColumnModel' + }, { - '|xns' : 'Roo.grid', - xtype : 'ColumnModel', - width : 150, - header : 'Staff', - renderer : function(v,x,r) { - - var efield = typeof(_this.email_field) == 'undefined' ? 'person_id_email' : _this.email_field; - var nfield = typeof(_this.name_field) == 'undefined' ? 'person_id_name' : _this.name_field; - - //Roo.log([r, efield, nfield]); - - var email = r.json[efield]; // ? r.data.person_id_email : r.data.person_id_email; - var name = r.json[nfield]; // ? r.data.person_id_name : r.data.person_id_name; - return String.format('{0} <{1}>', - name, email); - - - }, - xns : Roo.grid, - dataIndex : 'person_id_name' - }, + '|xns' : 'Roo.grid', + dataIndex : 'person_id_name', + header : _this._strings['8f7f93630c366dc55aec88eb8e9640d0'], + renderer : function(v,x,r) { + + var efield = typeof(_this.email_field) == 'undefined' ? 'person_id_email' : _this.email_field; + var nfield = typeof(_this.name_field) == 'undefined' ? 'person_id_name' : _this.name_field; + + //Roo.log([r, efield, nfield]); + + var email = r.json[efield]; // ? r.data.person_id_email : r.data.person_id_email; + var name = r.json[nfield]; // ? r.data.person_id_name : r.data.person_id_name; + return String.format('{0} <{1}>', + name, email); + + + }, + width : 150, + xns : Roo.grid, + xtype : 'ColumnModel' + }, { - '|xns' : 'Roo.grid', - xtype : 'ColumnModel', - header : 'Action', - width : 100, - renderer : function(v) { return String.format('{0}', v); }, - xns : Roo.grid, - dataIndex : 'action' - }, + '|xns' : 'Roo.grid', + dataIndex : 'action', + header : _this._strings['004bf6c9a40003140292e97330236c53'], + renderer : function(v) { return String.format('{0}', v); }, + width : 100, + xns : Roo.grid, + xtype : 'ColumnModel' + }, { - '|xns' : 'Roo.grid', - xtype : 'ColumnModel', - header : 'IP', - width : 100, - renderer : function(v) { return String.format('{0}', v); }, - xns : Roo.grid, - dataIndex : 'ipaddr' - }, + '|xns' : 'Roo.grid', + dataIndex : 'ipaddr', + header : _this._strings['a12a3079e14ced46e69ba52b8a90b21a'], + renderer : function(v) { return String.format('{0}', v); }, + width : 100, + xns : Roo.grid, + xtype : 'ColumnModel' + }, { - '|xns' : 'Roo.grid', - xtype : 'ColumnModel', - width : 100, - header : 'Affected', - renderer : function(v, x, r) { - return v ? String.format('{0}({1})', v, r.data.on_id) : ''; - }, - xns : Roo.grid, - dataIndex : 'on_table' - }, + '|xns' : 'Roo.grid', + dataIndex : 'on_table', + header : _this._strings['2c92a9a6a5dbf570825e62eabcdecd8d'], + renderer : function(v, x, r) { + return v ? String.format('{0}({1})', v, r.data.on_id) : ''; + }, + width : 100, + xns : Roo.grid, + xtype : 'ColumnModel' + }, { - '|xns' : 'Roo.grid', - xtype : 'ColumnModel', - width : 300, - header : 'Remarks', - renderer : function(v) { return String.format('{0}', v, Roo.util.Format.htmlEncode(v)); }, - xns : Roo.grid, - dataIndex : 'remarks' - } - ], - listeners : { - render : function() { - _this.grid = this; - //_this.dialog = Pman.Dialog.FILL_IN - if (_this.panel.active) { - this.footer.onClick('first'); - } - } - }, - items : [ + '|xns' : 'Roo.grid', + dataIndex : 'remarks', + header : _this._strings['231bc72756b5e6de492aaaa1577f61b1'], + renderer : function(v) { return String.format('{0}', v, Roo.util.Format.htmlEncode(v)); }, + width : 300, + xns : Roo.grid, + xtype : 'ColumnModel' + } + ], + listeners : { + render : function() { + _this.grid = this; + //_this.dialog = Pman.Dialog.FILL_IN + if (_this.panel.active) { + this.footer.onClick('first'); + } + } + }, + items : [ - ] + ] - }, - '|xns' : 'Roo', - region : 'center', - fitToframe : true, - background : false, - title : "Events", - xtype : 'GridPanel', - fitContainer : true, - xns : Roo, - tableName : 'Events', - listeners : { - activate : function() { - _this.panel = this; - if (_this.grid) { - _this.grid.footer.onClick('first'); - } - } - }, - items : [ + }, + '|xns' : 'Roo', + background : false, + fitContainer : true, + fitToframe : true, + region : 'center', + tableName : 'Events', + title : _this._strings['87f9f735a1d36793ceaecd4e47124b63'], + xns : Roo, + xtype : 'GridPanel', + listeners : { + activate : function() { + _this.panel = this; + if (_this.grid) { + _this.grid.footer.onClick('first'); + } + } + }, + items : [ - ] + ] - } - ] + } + ] - }, - '|xns' : 'Roo', - region : 'center', - title : "Events", - xtype : 'NestedLayoutPanel', - xns : Roo, - items : [ + }, + '|xns' : 'Roo', + region : 'center', + title : _this._strings['87f9f735a1d36793ceaecd4e47124b63'], + xns : Roo, + xtype : 'NestedLayoutPanel', + items : [ - ] + ] - }; } + }; } }); -- 2.39.2