// Auto generated file - created by app.Builder.js- do not edit directly (at present!)
+Roo.namespace('Pman.Tab');
+
Pman.Tab.MTrackTimeline = new Roo.XComponent({
- part : ["MTrack","Timeline"],
- order : '300-Pman.Tab.MTrackTimeline',
- region : 'center',
- parent : 'Pman.Tab.DocumentsTab',
- name : "unnamed module",
- disabled : false,
- permname : '',
- _tree : function()
- {
- var _this = this;
- var MODULE = this;
- return {
- xtype: 'NestedLayoutPanel',
- xns: Roo,
- listeners : {
- activate : function (_self)
- {
- // navigation..
- // a) record the fact we go here.. (for history)
-
- // when page loads, we have to go to this page..
-
- // at other times, we just check
- // a) project was the same as before... - do not change.
- // b)
- _this.project = _this.project || 0;
-
-
- if (typeof(MTrackWeb) != 'undefined' && !MTrackWeb.Layout) {
- return;
- }
- /*
- if (!_this.iscroll) {
-
- (function() {
-
- try {
- _this.iscroll = new Roo.ux.Iscroll(_this.tpanel.el.dom);
- } catch(e) {
- Roo.log(e);
- }
- }).defer(100);
-
- }
- _this.iscroll = true;
-
- */
- var chg_project = (_this.project != Pman.Tab.DocumentsTab.panel.getProjectId());
-
- _this.project = Pman.Tab.DocumentsTab.panel.getProjectId();
-
-
-
-
- if (typeof(MTrackWeb) == 'undefined') {
- return;
- }
- try {
- window.history.pushState( { url: '/Timeline' }, 'Timeline' , baseURL + '/Timeline' );
- } catch (e) {}
-
- MTrack.currentURL = '/Timeline';
- if (chg_project) {
- (function() {
- _this.grid.ds.load({});
- //_this.tpanel.view.store.load({});
- }).defer(100);
- }
-
+
+ _strings : {
+ '9a9984a2dd014cc958919b73e2a1f33a' :"Project Timeline",
+ '87f9f735a1d36793ceaecd4e47124b63' :"Events",
+ '9e727fdd3aec8274f46685441900280d' :"Project",
+ '4ee972120bcda675f75222c87cb9d356' :"Who",
+ '3d1f92a565d3b1a61880236e33c49bf3' :"Timeline",
+ 'c112bb3542e98308d12d5ecb10a67abc' :"Changes",
+ 'e77ec81408c215410441b24d83ef5bec' :"Repos",
+ 'ff5572e3fac2fd20b897cebfdf14e9d5' :"Code Changes",
+ '6c099dca310fcc4e75f7cc0d01e5afe1' :"Select a date to refresh.."
+ },
+
+ part : ["MTrack", "Timeline" ],
+ order : '300-Pman.Tab.MTrackTimeline',
+ region : 'center',
+ parent : 'Pman.Tab.DocumentsTab',
+ name : "unnamed module",
+ disabled : false,
+ permname : '',
+ _tree : function()
+ {
+ var _this = this;
+ var MODULE = this;
+ return {
+ background : true,
+ fitContainer : true,
+ fitToFrame : true,
+ region : 'center',
+ title : _this._strings['9a9984a2dd014cc958919b73e2a1f33a'] /* Project Timeline */,
+ xns : Roo,
+ '|xns' : 'Roo',
+ xtype : 'NestedLayoutPanel',
+ listeners : {
+ activate : function (_self)
+ {
+ // navigation..
+ // a) record the fact we go here.. (for history)
+
+ // when page loads, we have to go to this page..
+
+ // at other times, we just check
+ // a) project was the same as before... - do not change.
+ // b)
+ _this.project = _this.project || 0;
+
+
+ if (typeof(MTrackWeb) != 'undefined' && !MTrackWeb.Layout) {
+ return;
+ }
+
+ if (typeof(Pman.Tab.DocumentsTab) == 'undefined') {
+ return;
+ }
+ /*
+ if (!_this.iscroll) {
+
+ (function() {
+
+ try {
+ _this.iscroll = new Roo.ux.Iscroll(_this.tpanel.el.dom);
+ } catch(e) {
+ Roo.log(e);
+ }
+ }).defer(100);
+
+ }
+ _this.iscroll = true;
+
+ */
+ var chg_project = (_this.project != Pman.Tab.DocumentsTab.panel.getProjectId());
+
+ _this.project = Pman.Tab.DocumentsTab.panel.getProjectId();
+
+ if (typeof(MTrackWeb) == 'undefined') {
+ return;
+ }
+ try {
+ window.history.pushState( { url: '/Timeline' }, 'Timeline' , baseURL + '/Timeline' );
+ } catch (e) {}
+
+ MTrack.currentURL = '/Timeline';
+ if (chg_project) {
+ (function() {
+ _this.grid.ds.load({});
+ //_this.tpanel.view.store.load({});
+ }).defer(100);
+ }
+
+
+ }
+ },
+ layout : {
+ xns : Roo,
+ '|xns' : 'Roo',
+ xtype : 'BorderLayout',
+ center : {
+ tabPosition : 'top',
+ xns : Roo,
+ '|xns' : 'Roo',
+ xtype : 'LayoutRegion'
+ },
+ west : {
+ width : 250,
+ xns : Roo,
+ '|xns' : 'Roo',
+ xtype : 'LayoutRegion'
+ },
+ items : [
+ {
+ autoScroll : true,
+ fitToFrame : true,
+ region : 'center',
+ title : _this._strings['ff5572e3fac2fd20b897cebfdf14e9d5'] /* Code Changes */,
+ xns : Roo,
+ '|xns' : 'Roo',
+ xtype : 'ContentPanel',
+ listeners : {
+ activate : function (_self)
+ {
+
+ },
+ render : function (_self)
+ {
+ _this.commitpanel = _self;
+ }
+ },
+ view : {
+ tpl : new Roo.DomTemplate({url : rootURL +'/Pman/MTrack/domtemplates/dailychanges.html'}),
+ xns : Roo,
+ '|xns' : 'Roo',
+ xtype : 'View',
+ listeners : {
+ preparedata : function (_self, data, i, rec)
+ {
+ Roo.apply(data, rec.json);
+ }
+ },
+ store : {
+ xns : Roo.data,
+ '|xns' : 'Roo.data',
+ xtype : 'Store',
+ listeners : {
+ beforeload : function (_self, o)
+ {
+ o.params = o.params || {};
+ o.params._daychanges = _this.datePicker.activeDate.format("Y-m-d");
+ var re = _this.grid.selModel.getSelected();
+ if (!re) {
+ return false;
+ }
+ o.params.id = re.data.repo_id;
+ }
+ },
+ proxy : {
+ method : 'GET',
+ timeout : 60000,
+ url : baseURL + '/Roo/mtrack_repos',
+ xns : Roo.data,
+ '|xns' : 'Roo.data',
+ xtype : 'HttpProxy'
+ },
+ reader : {
+ fields : [
+ {
+ 'name': 'id',
+ 'type': 'int'
+ },
+ 'name'
+ ],
+ id : 'id',
+ root : 'data',
+ xns : Roo.data,
+ '|xns' : 'Roo.data',
+ xtype : 'JsonReader'
+ }
+ }
+ }
+ },
+ {
+ autoScroll : true,
+ background : true,
+ fitContainer : true,
+ fitToFrame : true,
+ mload : function(url) {
+
+ // can you actually link to this page..
+ // perhaps a specific day..
+
+ this._url = url;
+ // this._project = MTrack.projectCombo.getValue();
+ // MTrack.ajaxLoad(url, this);
+ _this.grid.ds.load({});
+
+ },
+ region : 'center',
+ title : _this._strings['3d1f92a565d3b1a61880236e33c49bf3'] /* Timeline */,
+ xns : Roo,
+ '|xns' : 'Roo',
+ xtype : 'ContentPanel',
+ listeners : {
+ activate : function (_self)
+ {
+ _this.tpanel = _self;
+ }
+ },
+ toolbar : {
+ xns : Roo,
+ '|xns' : 'Roo',
+ xtype : 'Toolbar',
+ items : [
+ {
+ text : _this._strings['6c099dca310fcc4e75f7cc0d01e5afe1'] /* Select a date to refresh.. */,
+ xns : Roo.Toolbar,
+ '|xns' : 'Roo.Toolbar',
+ xtype : 'Button'
+ }
+ ]
+ },
+ items : [
+ {
+ multiSelect : true,
+ selectedClass : 'change-log-item-expanded',
+ singleSelect : false,
+ toggleSelect : true,
+ xns : Roo,
+ '|xns' : 'Roo',
+ xtype : 'View',
+ listeners : {
+ beforeclick : function (_self, index, node, e)
+ {
+ Roo.log(node);
+ Roo.log(e);
+ },
+ beforeselect : function (_self, node, selections)
+ {
+ //Roo.log(node)
+ //Roo.log(this.indexOf(node));
+ var rec = this.store.getAt(this.indexOf(node));
+ //Roo.log(data);
+
+ new Pman.Request({
+ url : baseURL + '/Roo/mtrack_change',
+ method :'GET',
+ params : {
+ _id : rec.data.id,
+ _withdiff : 1
+ },
+ success : function (res) {
+
+ //.. this.tpl.
+ //Roo.log( _this.tpanel.view.chgtmp.apply(res));
+
+
+ }
+ });
+
+
+
+
+ }
+ },
+ store : {
+ remoteSort : true,
+ sortInfo : { field : 'person_name', direction: 'ASC' },
+ xns : Roo.data,
+ '|xns' : 'Roo.data',
+ xtype : 'Store',
+ listeners : {
+ beforeload : function (_self, o)
+ {
+ o = o || {};
+ o.params = o.params || {};
+
+ var sel = _this.grid.selModel.getSelected();
+ if (!sel) {
+ return false;
+ }
+
+
+ o.params.from_date =_this.datePicker.activeDate.format("Y-m-d");
+ o.params.person_id = sel.data.person_id;
+ // o.params.viewtype = 'summary';
+ o.params.timeline = 1;
+ // project?
+ o.params.project_id = sel.data.project_id;
+ o.params.limit = 9999;
+ }
+ },
+ proxy : {
+ method : 'GET',
+ url : baseURL + '/Roo/mtrack_change.php',
+ xns : Roo.data,
+ '|xns' : 'Roo.data',
+ xtype : 'HttpProxy'
+ },
+ reader : {
+ fields : [
+ {
+ 'name': 'person_id',
+ 'type': 'int'
+ },
+ {
+ 'name': 'person_name',
+ 'type': 'string'
+ },
+ {
+ 'name': 'changeday',
+ 'type': 'date',
+ 'dateFormat': 'Y-m-d'
+ },
+ {
+ 'name': 'nchanges',
+ 'type': 'int'
+ },
+ 'project_code',
+ 'project_id'
+
+
+ ],
+ id : 'id',
+ root : 'data',
+ totalProperty : 'total',
+ xns : Roo.data,
+ '|xns' : 'Roo.data',
+ xtype : 'JsonReader'
+ }
+ },
+ chgtpl : {
+ url : rootURL + '/Pman/MTrack/templates/timeline-changelog.html',
+ xns : Roo,
+ '|xns' : 'Roo',
+ xtype : 'XTemplate'
+ },
+ tpl : {
+ url : rootURL + '/Pman/MTrack/templates/timeline.html',
+ xns : Roo,
+ '|xns' : 'Roo',
+ xtype : 'XTemplate'
+ }
+ }
+ ]
+ },
+ {
+ region : 'west',
+ xns : Roo,
+ '|xns' : 'Roo',
+ xtype : 'NestedLayoutPanel',
+ layout : {
+ xns : Roo,
+ '|xns' : 'Roo',
+ xtype : 'BorderLayout',
+ center : {
+ xns : Roo,
+ '|xns' : 'Roo',
+ xtype : 'LayoutRegion'
+ },
+ north : {
+ height : 220,
+ xns : Roo,
+ '|xns' : 'Roo',
+ xtype : 'LayoutRegion'
+ },
+ items : [
+ {
+ autoScroll : true,
+ background : false,
+ fitContainer : true,
+ fitToframe : true,
+ region : 'center',
+ tableName : 'Events',
+ title : _this._strings['87f9f735a1d36793ceaecd4e47124b63'] /* Events */,
+ xns : Roo,
+ '|xns' : 'Roo',
+ xtype : 'GridPanel',
+ listeners : {
+ activate : function() {
+ _this.gridpanel = this;
+
+ }
+ },
+ grid : {
+ autoExpandColumn : 'person_id_name',
+ loadMask : true,
+ xns : Roo.grid,
+ '|xns' : 'Roo.grid',
+ xtype : 'Grid',
+ listeners : {
+ render : function()
+ {
+ _this.grid = this;
+ //_this.dialog = Pman.Dialog.FILL_IN
+ this.dataSource.load({});
+
+ }
+ },
+ dataSource : {
+ remoteSort : true,
+ sortInfo : { field : 'person_name', direction: 'ASC' },
+ xns : Roo.data,
+ '|xns' : 'Roo.data',
+ xtype : 'Store',
+ listeners : {
+ beforeload : function (_self, o)
+ {
+ o = o || {};
+ o.params = o.params || {};
- }
- },
- background : true,
- fitContainer : true,
- fitToFrame : true,
- region : 'center',
- title : "Project Timeline",
- layout : {
- xtype: 'BorderLayout',
- xns: Roo,
- items : [
- {
- xtype: 'ContentPanel',
- xns: Roo,
- listeners : {
- activate : function (_self)
- {
- _this.tpanel = _self;
- }
- },
- autoScroll : true,
- background : true,
- fitContainer : true,
- fitToFrame : true,
- region : 'center',
- title : "Timeline",
- mload : function(url) {
-
- // can you actually link to this page..
- // perhaps a specific day..
-
- this._url = url;
- this._project = MTrack.projectCombo.getValue();
- // MTrack.ajaxLoad(url, this);
- _this.grid.ds.load({});
-
- },
- items : [
- {
- xtype: 'View',
- xns: Roo,
- tpl : '<B></B>',
- store : {
- xtype: 'Store',
- xns: Roo.data,
- listeners : {
- beforeload : function (_self, o)
- {
- o = o || {};
- if (!_this.datePicker) {return false; }
-
- o.params = o.params || {};
- o.params.json = 1;
- o.params.ajax_body = 1;
- o.params.from_date = _this.datePicker.getValue().format('Y-m-d');
- },
- load : function (_self, records, options)
- {
- Roo.log('store - load');
- }
- },
- reader : {
- xtype: 'JsonReader',
- xns: Roo.data,
- id : 'id',
- root : 'data',
- totalProperty : 'total',
- fields : [
- {
- 'name': 'id',
- 'type': 'int'
- },
- {
- 'name': 'name',
- 'type': 'string'
- },
- {
- 'name': 'changeday',
- 'type': 'date',
- 'dateFormat': 'Y-m-d'
- },
- {
- 'name': 'nchanges',
- 'type': 'int'
- }
-
- ]
- },
- proxy : {
- xtype: 'HttpProxy',
- xns: Roo.data,
- method : 'GET',
- url : baseURL + '/Timeline'
- }
- }
- }
- ],
- toolbar : {
- xtype: 'Toolbar',
- xns: Roo,
- items : [
- {
- xtype: 'Button',
- xns: Roo.Toolbar,
- text : "Select a date to refresh.."
- }
- ]
- }
- },
- {
- xtype: 'NestedLayoutPanel',
- xns: Roo,
- region : 'west',
- layout : {
- xtype: 'BorderLayout',
- xns: Roo,
- items : [
- {
- xtype: 'GridPanel',
- xns: Roo,
- listeners : {
- activate : function() {
- _this.gridpanel = this;
-
- }
- },
- autoScroll : true,
- background : true,
- fitContainer : true,
- fitToframe : true,
- region : 'center',
- tableName : 'Events',
- title : "Events",
- grid : {
- xtype: 'Grid',
- xns: Roo.grid,
- listeners : {
- render : function()
- {
- _this.grid = this;
- //_this.dialog = Pman.Dialog.FILL_IN
- this.dataSource.load({});
-
- }
- },
- autoExpandColumn : 'person_id_name',
- loadMask : true,
- sm : {
- xtype: 'RowSelectionModel',
- xns: Roo.grid,
- listeners : {
- afterselectionchange : function (_self)
- {
- // select the data..
-
- var r= _this.grid.sm.getSelected();
-
-
- _this.datePicker.setValue(r.data.changeday);
- _this.tpanel.view.store.load({});
- }
- },
- singleSelect : true
- },
- dataSource : {
- xtype: 'Store',
- xns: Roo.data,
- listeners : {
- beforeload : function (_self, o)
- {
- o = o || {};
- o.params = o.params || {};
-
- if (!_this.datePicker || !_this.datePicker.getValue) {
- return false;
- }
- o.params.from_date = _this.datePicker.activeDate.format("Y-m-01");
- o.params.viewtype = 'summary';
- o.params.timeline = 1;
- // project?
- o.params.project = Pman.Tab.DocumentsTab.panel.getProjectId();
- }
- },
- remoteSort : true,
- sortInfo : { field : 'person_name', direction: 'ASC' },
- proxy : {
- xtype: 'HttpProxy',
- xns: Roo.data,
- method : 'GET',
- url : baseURL + '/Roo/Mtrack_change.php'
- },
- reader : {
- xtype: 'JsonReader',
- xns: Roo.data,
- id : 'id',
- root : 'data',
- totalProperty : 'total',
- fields : [
- {
- 'name': 'id',
- 'type': 'int'
- },
- {
- 'name': 'name',
- 'type': 'string'
- },
- {
- 'name': 'changeday',
- 'type': 'date',
- 'dateFormat': 'Y-m-d'
- },
- {
- 'name': 'nchanges',
- 'type': 'int'
- },
- 'project_code',
- 'project_id',
-
-
- ]
- }
- },
- colModel : [
- {
- xtype: 'ColumnModel',
- xns: Roo.grid,
- dataIndex : 'changeday',
- header : 'Date',
- width : 20,
- renderer : function(v,x,r) {
-
- return String.format('{0}', v ? v.format('d') : '' );
- }
- },
- {
- xtype: 'ColumnModel',
- xns: Roo.grid,
- dataIndex : 'project_code',
- header : 'Project',
- width : 50,
- renderer : function(v,x,r) {
-
- Roo.log(r);
- return String.format( '{0}' , r.data.project_code );
- }
- },
- {
- xtype: 'ColumnModel',
- xns: Roo.grid,
- dataIndex : 'name',
- header : 'Who',
- width : 100,
- renderer : function(v,x,r) {
-
- return String.format( '{0}' , v);
- }
- },
- {
- xtype: 'ColumnModel',
- xns: Roo.grid,
- align : 'right',
- dataIndex : 'nchanges',
- header : 'Changes',
- width : 30,
- renderer : function(v,x,r) {
- return v * 1;
- }
- }
- ]
- }
- },
- {
- xtype: 'ContentPanel',
- xns: Roo,
- region : 'north',
- items : [
- {
- xtype: 'DatePicker',
- xns: Roo,
- listeners : {
- render : function (_self)
- {
- _this.datePicker = _self;
- },
- select : function (_self, date)
- {
- if (_this.tpanel.view.store) {
- return;
- }
- _this.tpanel.view.store.load({});
- },
- monthchange : function (_self, date)
- {
- if (_this.grid) {
- _this.grid.ds.load({ });
- }
- }
- }
- }
- ]
- }
- ],
- center : {
- xtype: 'LayoutRegion',
- xns: Roo
- },
- north : {
- xtype: 'LayoutRegion',
- xns: Roo,
- height : 220
- }
- }
- }
- ],
- center : {
- xtype: 'LayoutRegion',
- xns: Roo,
- tabPosition : 'top'
+ if (!_this.datePicker || !_this.datePicker.getValue) {
+ return false;
+ }
+ o.params.on_date = _this.datePicker.activeDate.format("Y-m-d");
+ o.params.viewtype = 'summary';
+ o.params.timeline = 1;
+ // project?
+ o.params.project_id = Pman.Tab.DocumentsTab ?
+ Pman.Tab.DocumentsTab.panel.getProjectId() : 0;
+ }
+ },
+ proxy : {
+ method : 'GET',
+ url : baseURL + '/Roo/mtrack_change.php',
+ xns : Roo.data,
+ '|xns' : 'Roo.data',
+ xtype : 'HttpProxy'
+ },
+ reader : {
+ fields : [
+ {
+ 'name': 'person_id',
+ 'type': 'int'
},
- west : {
- xtype: 'LayoutRegion',
- xns: Roo,
- width : 200
- }
- }
- };
- }
+ {
+ 'name': 'person_name',
+ 'type': 'string'
+ },
+ {
+ 'name': 'changeday',
+ 'type': 'date',
+ 'dateFormat': 'Y-m-d'
+ },
+ {
+ 'name': 'nchanges',
+ 'type': 'int'
+ },
+ 'project_code',
+ 'project_id',
+ 'repo_id',
+ 'repo_name'
+
+
+ ],
+ id : 'id',
+ root : 'data',
+ totalProperty : 'total',
+ xns : Roo.data,
+ '|xns' : 'Roo.data',
+ xtype : 'JsonReader'
+ }
+ },
+ sm : {
+ singleSelect : true,
+ xns : Roo.grid,
+ '|xns' : 'Roo.grid',
+ xtype : 'RowSelectionModel',
+ listeners : {
+ afterselectionchange : function (_self)
+ {
+ // select the data..
+
+ var r= _this.grid.sm.getSelected();
+
+
+ //_this.datePicker.setValue(r.data.changeday);
+ //
+ _this.commitpanel.view.store.load({});
+ // _this.tpanel.view.store.load({});
+
+ }
+ }
+ },
+ colModel : [
+ {
+ dataIndex : 'repo_name',
+ header : _this._strings['e77ec81408c215410441b24d83ef5bec'] /* Repos */,
+ renderer : function(v,x,r) {
+
+ return String.format('{0}', v ? v : '' );
+ },
+ width : 30,
+ xns : Roo.grid,
+ '|xns' : 'Roo.grid',
+ xtype : 'ColumnModel'
+ },
+ {
+ dataIndex : 'project_code',
+ header : _this._strings['9e727fdd3aec8274f46685441900280d'] /* Project */,
+ renderer : function(v,x,r) {
+
+ Roo.log(r);
+ return String.format( '{0}' ,v );
+ },
+ width : 50,
+ xns : Roo.grid,
+ '|xns' : 'Roo.grid',
+ xtype : 'ColumnModel'
+ },
+ {
+ dataIndex : 'person_name',
+ header : _this._strings['4ee972120bcda675f75222c87cb9d356'] /* Who */,
+ renderer : function(v,x,r) {
+
+ return String.format( '{0}' , v);
+ },
+ width : 100,
+ xns : Roo.grid,
+ '|xns' : 'Roo.grid',
+ xtype : 'ColumnModel'
+ },
+ {
+ align : 'right',
+ dataIndex : 'nchanges',
+ header : _this._strings['c112bb3542e98308d12d5ecb10a67abc'] /* Changes */,
+ renderer : function(v,x,r) {
+ return v * 1;
+ },
+ width : 30,
+ xns : Roo.grid,
+ '|xns' : 'Roo.grid',
+ xtype : 'ColumnModel'
+ }
+ ]
+ }
+ },
+ {
+ region : 'north',
+ xns : Roo,
+ '|xns' : 'Roo',
+ xtype : 'ContentPanel',
+ items : [
+ {
+ xns : Roo,
+ '|xns' : 'Roo',
+ xtype : 'DatePicker',
+ listeners : {
+ monthchange : function (_self, date)
+ {
+
+ },
+ render : function (_self)
+ {
+ _this.datePicker = _self;
+ },
+ select : function (_self, date)
+ {
+ if (! _this.grid) {
+ return;
+ }
+ _this.grid.ds.load({});
+ }
+ }
+ }
+ ]
+ }
+ ]
+ }
+ }
+ ]
+ }
+ }; }
});