{
- "id": "roo-file-360",
- "name": "Pman.Tab.MtrackCal",
- "parent": "",
- "title": "",
- "path": "/home/alan/gitlive/Pman.MTrack/Pman.Tab.MtrackCal.bjs",
- "items": [
+ "name" : "Pman.Tab.MtrackCal",
+ "parent" : "Pman.Tab.DocumentsTab",
+ "title" : "Pman.Tab.MtrackCal",
+ "path" : "/home/alan/gitlive/Pman.MTrack/Pman.Tab.MtrackCal.bjs",
+ "permname" : "",
+ "modOrder" : "100",
+ "strings" : {
+ "1243daf593fa297e07ab03bf06d925af" : "Searching...",
+ "340c2ee497b85d5954b01c64de7f44f6" : "Select Person ",
+ "40bed7cf9b3d4bb3a3d7a7e3eb18c5eb" : "Person ",
+ "25f7347236b51a5eae4ba01a7862cb55" : "Schedule"
+ },
+ "items" : [
+ {
+ "listeners" : {
+ "activate" : "function (_self)\n{\n if (!_this.cal) {\n return;\n }\n _this.cal.setDate(new Date());\n}"
+ },
+ "region" : "center",
+ "xtype" : "GridPanel",
+ "title" : "Schedule",
+ "$ xns" : "Roo",
+ "items" : [
+ {
+ "listeners" : {
+ "eventrender" : "function (_self, rec)\n{\n \n rec.data.time = ''; // not needed\n rec.data.title = rec.data.developer_id_name + ' ' + rec.data.project_id_name;\n rec.data.qtip = '#' + rec.data.id + ' ' + rec.data.summary;\n \n if (!rec.data.estimated) {\n rec.data.cls = \"Greys-q3-6 fc-black-text \"; // grey...\n } else {\n rec.data.cls = 'fc-black-text RdYlGn-q' + rec.data.priority_id_seqid +'-7'\n }\n \n \n}",
+ "eventclick" : "function (_self, Ev,r )\n{\n // show the dialog..\n // reload the calendar on exit.\n Roo.log(Ev);\n Roo.log(r);\n Pman.Dialog.MTrackTicket.show({ id : r.data.id } , function(res) {\n // update the record..\n // redra\n Roo.log(\"ticket updated\");\n // start / end times? - not sent through, so it should not update..\n for(k in res) {\n r.data[k] = res[k];\n }\n \n _this.cal.renderEvents();\n \n \n });\n}",
+ "render" : "function (grid)\n{\n \n _this.cal = grid;\n}"
+ },
+ "xtype" : "Calendar",
+ "$ xns" : "Roo.grid",
+ "* prop" : "grid",
+ "items" : [
+ {
+ "xtype" : "Toolbar",
+ "$ xns" : "Roo",
+ "* prop" : "toolbar",
+ "items" : [
{
- "|xns": "Roo",
- "xtype": "GridPanel",
- "items": [
- {
- "|xns": "Roo.grid",
- "xtype": "Calendar",
- "*prop": "grid",
- "items": [
- {
- "|xns": "Roo.data",
- "xtype": "Store",
- "*prop": "eventStore",
- "items": [
- {
- "*prop": "proxy",
- "|url": "baseURL + '/Roo/mtrack_ticket'",
- "xtype": "HttpProxy",
- "|xns": "Roo.data"
- },
- {
- "|xns": "Roo.data",
- "xtype": "JsonReader",
- "*prop": "reader"
- }
- ]
- }
- ]
- }
- ]
+ "listeners" : {
+ "|render" : "function (_self)\n{\n _this.personSel = _self;\n}",
+ "|select" : "function (combo, record, index)\n{\n _this.cal.load();\n \n}",
+ "select" : "function (combo, record, index)\n{\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" : "<div class=\"x-grid-cell-text x-btn button\"><b>{name}</b> ({company_id_name}) <{email}> </div>",
+ "loadingText" : "Searching...",
+ "items" : [
+ {
+ "listeners" : {
+ "|beforeload" : "function (_self, o)\n{\n o.params = o.params || {};\n o.company_id = Pman.Login.authUser.company_id;\n o.params['query[role]'] = 'DEVELOPER';\n}"
+ },
+ "xtype" : "Store",
+ "$ sortInfo" : "{ field : 'name' , direction : 'ASC' }",
+ "$ xns" : "Roo.data",
+ "* prop" : "store",
+ "items" : [
+ {
+ "$ 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" : {
+ "|click" : "function (_self, e)\n{\n _this.cal.load();\n}"
+ },
+ "xtype" : "Button",
+ "cls" : "x-btn-icon",
+ "$ icon" : "rootURL + '/Pman/templates/images/search.gif'",
+ "$ xns" : "Roo.Toolbar"
+ }
+ ]
+ },
+ {
+ "listeners" : {
+ "beforeload" : "function (_self, o)\n{\n if (!_this.personSel) {\n return false;\n }\n\n o = o || {};\n o.params = o.params || {};\n o.params._future_schedule = 1;\n o.params['query[viewtype]']= 'active';\n o.params.limit= 999;\n o.params.sort = 'summary';\n o.params.dir = 'ASC';\n var pid = _this.personSel.getValue();\n if (pid*1) {\n o.params['filter[developer_id]'] = pid;\n }\n try { \n o.params['filter[project_id]'] = Pman.Tab.DocumentsTab.panel.getProjectId();\n } catch(e) {\n \n }\n _this.cal.setDate(new Date());\n \n}"
+ },
+ "xtype" : "Store",
+ "$ xns" : "Roo.data",
+ "* prop" : "eventStore",
+ "items" : [
+ {
+ "$ url" : "baseURL + '/Roo/mtrack_ticket'",
+ "xtype" : "HttpProxy",
+ "method" : "GET",
+ "$ xns" : "Roo.data",
+ "* prop" : "proxy"
+ },
+ {
+ "id" : "id",
+ "root" : "data",
+ "xtype" : "JsonReader",
+ "$ xns" : "Roo.data",
+ "* prop" : "reader",
+ "totalProperty" : "total"
}
- ],
- "permname": "",
- "modOrder": "001"
+ ]
+ }
+ ]
+ }
+ ]
+ }
+ ]
}
\ No newline at end of file