2 "name" : "Pman.Tab.MTrackTimeline",
3 "parent" : "Pman.Tab.DocumentsTab",
5 "path" : "/home/alan/gitlive/Pman.MTrack/Pman.Tab.MTrackTimeline.bjs",
9 "9a9984a2dd014cc958919b73e2a1f33a" : "Project Timeline",
10 "87f9f735a1d36793ceaecd4e47124b63" : "Events",
11 "9e727fdd3aec8274f46685441900280d" : "Project",
12 "4ee972120bcda675f75222c87cb9d356" : "Who",
13 "3d1f92a565d3b1a61880236e33c49bf3" : "Timeline",
14 "c112bb3542e98308d12d5ecb10a67abc" : "Changes",
15 "e77ec81408c215410441b24d83ef5bec" : "Repos",
16 "ff5572e3fac2fd20b897cebfdf14e9d5" : "Code Changes",
17 "6c099dca310fcc4e75f7cc0d01e5afe1" : "Select a date to refresh.."
22 "activate" : "function (_self)\n{\n // navigation..\n // a) record the fact we go here.. (for history)\n \n // when page loads, we have to go to this page..\n \n // at other times, we just check \n // a) project was the same as before... - do not change.\n // b) \n _this.project = _this.project || 0;\n \n \n if (typeof(MTrackWeb) != 'undefined' && !MTrackWeb.Layout) {\n return;\n }\n \n if (typeof(Pman.Tab.DocumentsTab) == 'undefined') {\n return;\n }\n /*\n if (!_this.iscroll) { \n \n (function() {\n \n try {\n _this.iscroll = new Roo.ux.Iscroll(_this.tpanel.el.dom);\n } catch(e) { \n Roo.log(e);\n }\n }).defer(100); \n\n }\n _this.iscroll = true; \n \n */\n var chg_project = (_this.project != Pman.Tab.DocumentsTab.panel.getProjectId());\n \n _this.project = Pman.Tab.DocumentsTab.panel.getProjectId();\n \n if (typeof(MTrackWeb) == 'undefined') {\n return;\n }\n try { \n window.history.pushState( { url: '/Timeline' }, 'Timeline' , baseURL + '/Timeline' );\n } catch (e) {}\n \n MTrack.currentURL = '/Timeline';\n if (chg_project) {\n (function() {\n _this.grid.ds.load({});\n //_this.tpanel.view.store.load({});\n }).defer(100);\n }\n \n \n}"
27 "title" : "Project Timeline",
28 "xtype" : "NestedLayoutPanel",
29 "fitContainer" : true,
33 "xtype" : "BorderLayout",
38 "xtype" : "LayoutRegion",
39 "tabPosition" : "top",
44 "xtype" : "LayoutRegion",
51 "activate" : "function (_self)\n{\n \n}",
52 "render" : "function (_self)\n{\n _this.commitpanel = _self;\n}"
57 "title" : "Code Changes",
58 "xtype" : "ContentPanel",
63 "preparedata" : "function (_self, data, i, rec)\n{\n Roo.apply(data, rec.json);\n}"
65 "$ tpl" : "new Roo.DomTemplate({url : rootURL +'/Pman/MTrack/domtemplates/dailychanges.html'})",
72 "beforeload" : "function (_self, o)\n{\n o.params = o.params || {};\n o.params._daychanges = _this.datePicker.activeDate.format(\"Y-m-d\");\n var re = _this.grid.selModel.getSelected();\n if (!re) {\n return false;\n }\n o.params.id = re.data.repo_id;\n}"
79 "$ url" : "baseURL + '/Roo/mtrack_repos'",
81 "xtype" : "HttpProxy",
89 "xtype" : "JsonReader",
90 "$ fields" : "[\n {\n 'name': 'id',\n 'type': 'int'\n },\n 'name'\n]",
102 "activate" : "function (_self)\n{\n _this.tpanel = _self;\n}"
108 "title" : "Timeline",
109 "xtype" : "ContentPanel",
110 "fitContainer" : true,
112 "$ mload" : "function(url) {\n\n // can you actually link to this page..\n // perhaps a specific day..\n\n this._url = url;\n // this._project = MTrack.projectCombo.getValue();\n // MTrack.ajaxLoad(url, this);\n _this.grid.ds.load({});\n \n}\n",
117 "* prop" : "toolbar",
120 "text" : "Select a date to refresh..",
122 "$ xns" : "Roo.Toolbar"
128 "beforeclick" : "function (_self, index, node, e)\n{\n Roo.log(node);\n Roo.log(e);\n}",
129 "beforeselect" : "function (_self, node, selections)\n{\n //Roo.log(node)\n //Roo.log(this.indexOf(node));\n var rec = this.store.getAt(this.indexOf(node));\n //Roo.log(data);\n \n new Pman.Request({\n url : baseURL + '/Roo/mtrack_change',\n method :'GET',\n params : {\n _id : rec.data.id,\n _withdiff : 1\n },\n success : function (res) {\n \n //.. this.tpl.\n //Roo.log( _this.tpanel.view.chgtmp.apply(res));\n \n \n }\n });\n \n \n \n \n}"
131 "selectedClass" : "change-log-item-expanded",
132 "multiSelect" : true,
134 "toggleSelect" : true,
135 "singleSelect" : false,
139 "$ url" : "rootURL + '/Pman/MTrack/templates/timeline.html'",
140 "xtype" : "XTemplate",
146 "beforeload" : "function (_self, o)\n{\n o = o || {};\n o.params = o.params || {};\n \n var sel = _this.grid.selModel.getSelected();\n if (!sel) {\n return false;\n }\n \n \n o.params.from_date =_this.datePicker.activeDate.format(\"Y-m-d\");\n o.params.person_id = sel.data.person_id;\n // o.params.viewtype = 'summary'; \n o.params.timeline = 1;\n // project?\n o.params.project_id = sel.data.project_id;\n o.params.limit = 9999;\n}"
150 "$ sortInfo" : "{ field : 'person_name', direction: 'ASC' }",
151 "$ xns" : "Roo.data",
155 "$ url" : "baseURL + '/Roo/mtrack_change.php'",
156 "xtype" : "HttpProxy",
158 "$ xns" : "Roo.data",
164 "xtype" : "JsonReader",
165 "$ fields" : "[\n {\n 'name': 'person_id',\n 'type': 'int'\n },\n {\n 'name': 'person_name',\n 'type': 'string'\n },\n {\n 'name': 'changeday',\n 'type': 'date',\n 'dateFormat': 'Y-m-d'\n },\n {\n 'name': 'nchanges',\n 'type': 'int'\n },\n 'project_code',\n 'project_id'\n \n\n]",
166 "$ xns" : "Roo.data",
168 "totalProperty" : "total"
173 "$ url" : "rootURL + '/Pman/MTrack/templates/timeline-changelog.html'",
174 "xtype" : "XTemplate",
184 "xtype" : "NestedLayoutPanel",
188 "xtype" : "BorderLayout",
193 "xtype" : "LayoutRegion",
198 "xtype" : "LayoutRegion",
205 "|activate" : "function() {\n _this.gridpanel = this;\n\n}"
208 "background" : false,
212 "xtype" : "GridPanel",
213 "fitContainer" : true,
215 "tableName" : "Events",
219 "|render" : "function() \n{\n _this.grid = this; \n //_this.dialog = Pman.Dialog.FILL_IN\n this.dataSource.load({});\n\n}"
221 "autoExpandColumn" : "person_id_name",
224 "$ xns" : "Roo.grid",
229 "afterselectionchange" : "function (_self)\n{\n // select the data..\n \n var r= _this.grid.sm.getSelected();\n \n \n //_this.datePicker.setValue(r.data.changeday);\n //\n _this.commitpanel.view.store.load({});\n // _this.tpanel.view.store.load({});\n \n} "
231 "xtype" : "RowSelectionModel",
232 "singleSelect" : true,
233 "$ xns" : "Roo.grid",
238 "beforeload" : "function (_self, o)\n{\n o = o || {};\n o.params = o.params || {};\n \n if (!_this.datePicker || !_this.datePicker.getValue) {\n return false;\n }\n o.params.on_date = _this.datePicker.activeDate.format(\"Y-m-d\");\n o.params.viewtype = 'summary'; \n o.params.timeline = 1;\n // project?\n o.params.project_id = Pman.Tab.DocumentsTab ? \n Pman.Tab.DocumentsTab.panel.getProjectId() : 0;\n}"
242 "$ sortInfo" : "{ field : 'person_name', direction: 'ASC' }",
243 "$ xns" : "Roo.data",
244 "* prop" : "dataSource",
247 "$ url" : "baseURL + '/Roo/mtrack_change.php'",
248 "xtype" : "HttpProxy",
250 "$ xns" : "Roo.data",
256 "xtype" : "JsonReader",
257 "$ fields" : "[\n {\n 'name': 'person_id',\n 'type': 'int'\n },\n {\n 'name': 'person_name',\n 'type': 'string'\n },\n {\n 'name': 'changeday',\n 'type': 'date',\n 'dateFormat': 'Y-m-d'\n },\n {\n 'name': 'nchanges',\n 'type': 'int'\n },\n 'project_code',\n 'project_id',\n 'repo_id',\n 'repo_name'\n \n\n]",
258 "$ xns" : "Roo.data",
260 "totalProperty" : "total"
265 "xtype" : "ColumnModel",
268 "$ renderer" : "function(v,x,r) { \n\n return String.format('{0}', v ? v : '' );\n }",
269 "$ xns" : "Roo.grid",
270 "* prop" : "colModel[]",
271 "dataIndex" : "repo_name"
274 "xtype" : "ColumnModel",
275 "header" : "Project",
277 "$ renderer" : "function(v,x,r) { \n \n Roo.log(r);\n return String.format( '{0}' ,v );\n }\n ",
278 "$ xns" : "Roo.grid",
279 "* prop" : "colModel[]",
280 "dataIndex" : "project_code"
283 "xtype" : "ColumnModel",
286 "$ renderer" : "function(v,x,r) { \n \n return String.format( '{0}' , v);\n }\n ",
287 "$ xns" : "Roo.grid",
288 "* prop" : "colModel[]",
289 "dataIndex" : "person_name"
293 "xtype" : "ColumnModel",
294 "header" : "Changes",
296 "$ renderer" : "function(v,x,r) { \n return v * 1;\n }\n ",
297 "$ xns" : "Roo.grid",
298 "* prop" : "colModel[]",
299 "dataIndex" : "nchanges"
307 "xtype" : "ContentPanel",
312 "render" : "function (_self)\n{\n _this.datePicker = _self;\n}",
313 "monthchange" : "function (_self, date)\n{\n \n}",
314 "select" : "function (_self, date)\n{\n if (! _this.grid) {\n return;\n }\n _this.grid.ds.load({});\n}"
316 "xtype" : "DatePicker",