Pman.Tab.MTrackMerger.js
[Pman.MTrack] / Pman.Tab.MTrackMerger.js
1 //<script type="text/javascript">
2
3 // Auto generated file - created by app.Builder.js- do not edit directly (at present!)
4
5
6
7 // register the module first
8 Pman.on('beforeload', function()
9 {
10     Pman.register({
11         modKey : '400-Pman.Tab.MTrackMerger',
12         module : Pman.Tab.MTrackMerger,
13         region : 'center',
14         parent : Pman.Tab.MTrack,
15         name : "Pman.Tab.MTrackMerger",
16         disabled : false, 
17         permname: '' 
18     });
19 });
20
21 Pman.Tab.MTrackMerger = new Roo.util.Observable({
22
23     panel : false,
24     disabled : false,
25     parentLayout:  false,
26
27     add : function(parentLayout, region)
28     {
29
30         var _this = this;
31         this.parentLayout = parentLayout;
32
33         this.panel = parentLayout.addxtype({
34             xtype: 'NestedLayoutPanel',
35             xns: Roo,
36             listeners : {
37                 activate : function (_self)
38                 {
39                    try {
40                         var t = _this.tree.tree;
41                         t.loader.load(t.root);
42                     } catch(e) {}
43                 }
44             },
45             background : true,
46             region : 'center',
47             title : "Merger",
48             layout : {
49                 xtype: 'BorderLayout',
50                 xns: Roo,
51                 items : [
52                     {
53                         xtype: 'TreePanel',
54                         xns: Roo,
55                         listeners : {
56                             render : function (_self)
57                             {
58                               _this.tree = _self;
59                             }
60                         },
61                         autoScroll : true,
62                         fitToFrame : true,
63                         region : 'west',
64                         toolbar : {
65                             xtype: 'Toolbar',
66                             xns: Roo,
67                             items : [
68                                 {
69                                     xtype: 'Button',
70                                     xns: Roo.Toolbar,
71                                     listeners : {
72                                         click : function (_self, e)
73                                         {
74                                           var t = _this.tree.tree;
75                                           t.loader.load(t.root);
76                                         }
77                                     },
78                                     text : "Reload"
79                                 }
80                             ]
81                         },
82                         tree : {
83                             xtype: 'TreePanel',
84                             xns: Roo.tree,
85                             sm : {
86                                 xtype: 'DefaultSelectionModel',
87                                 xns: Roo.tree,
88                                 listeners : {
89                                     selectionchange : function (_self, node)
90                                     {
91                                        _this.grid.ds.load({});
92                                     }
93                                 }
94                             },
95                             loader : {
96                                 xtype: 'TreeLoader',
97                                 xns: Roo.tree,
98                                 listeners : {
99                                     beforeload : function (This, node, callback)
100                                     {
101                                        _this.tree.el.mask("Loading");
102                                     },
103                                     load : function (This, node, response)
104                                     {
105                                          _this.tree.el.unmask();
106                                          _this.tree.tree.root.expand(false,true);
107                                     },
108                                     loadexception : function (This, node, response)
109                                     {
110                                      _this.tree.el.unmask();
111                                     }
112                                 },
113                                 requestMethod : 'GET',
114                                 root : 'data',
115                                 baseParams : { _tree : 1 },
116                                 dataUrl : baseURL + '/MTrack/Merger'
117                             },
118                             root : {
119                                 xtype: 'TreeNode',
120                                 xns: Roo.tree,
121                                 text : "All Changes"
122                             }
123                         }
124                     },
125                     {
126                         xtype: 'GridPanel',
127                         xns: Roo,
128                         listeners : {
129                             activate : function() {
130                                 _this.panel = this;
131                                 if (_this.grid) {
132                                     //_this.grid.footer.onClick('first');
133                                 }
134                             }
135                         },
136                         background : true,
137                         fitContainer : true,
138                         fitToframe : true,
139                         region : 'center',
140                         tableName : 'core_enum',
141                         title : "core_enum",
142                         grid : {
143                             xtype: 'Grid',
144                             xns: Roo.grid,
145                             listeners : {
146                                 render : function() 
147                                 {
148                                     _this.grid = this; 
149                                     //_this.dialog = Pman.Dialog.FILL_IN
150                                     if (_this.panel.active) {
151                                        //this.footer.onClick('first');
152                                     }
153                                 },
154                                 rowdblclick : function (_self, rowIndex, e)
155                                 {
156                                     if (!_this.dialog) return;
157                                     _this.dialog.show( this.getDataSource().getAt(rowIndex), function() {
158                                         _this.grid.footer.onClick('first');
159                                     }); 
160                                 }
161                             },
162                             autoExpandColumn : 'etype',
163                             loadMask : true,
164                             dataSource : {
165                                 xtype: 'Store',
166                                 xns: Roo.data,
167                                 listeners : {
168                                     beforeload : function (_self, options)
169                                     {
170                                        if (!_this.tree.tree.selModel.getSelectedNode()) {
171                                            return false;
172                                        }
173                                        
174                                        options.params._changedFiles = _this.tree.tree.selModel.getSelectedNode().attributes.rev;
175                                     }
176                                 },
177                                 remoteSort : false,
178                                 sortInfo : { field: 'filename', dir : 'ASC' },
179                                 proxy : {
180                                     xtype: 'HttpProxy',
181                                     xns: Roo.data,
182                                     method : 'GET',
183                                     url : baseURL + '/MTrack/Merger.php'
184                                 },
185                                 reader : {
186                                     xtype: 'JsonReader',
187                                     xns: Roo.data,
188                                     id : 'id',
189                                     root : 'data',
190                                     totalProperty : 'total',
191                                     fields : [
192                                         {
193                                             'name': 'id',
194                                             'type': 'int'
195                                         },
196                                         {
197                                             'name': 'filename',
198                                             'type': 'string'
199                                         },
200                                         {
201                                             'name': 'added',
202                                             'type': 'int'
203                                         },
204                                         {
205                                             'name': 'removed',
206                                             'type': 'int'
207                                         }
208                                     
209                                     ]
210                                 }
211                             },
212                             sm : {
213                                 xtype: 'RowSelectionModel',
214                                 xns: Roo.grid,
215                                 singleSelect : false
216                             },
217                             toolbar : {
218                                 xtype: 'Toolbar',
219                                 xns: Roo,
220                                 items : [
221                                     {
222                                         xtype: 'Button',
223                                         xns: Roo.Toolbar,
224                                         listeners : {
225                                             click : function()
226                                             {
227                                                
228                                             }
229                                         },
230                                         cls : 'x-btn-text-icon',
231                                         text : "Create Commit",
232                                         icon : Roo.rootURL + 'images/default/dd/drop-add.gif'
233                                     }
234                                 ]
235                             },
236                             colModel : [
237                                 {
238                                     xtype: 'ColumnModel',
239                                     xns: Roo.grid,
240                                     dataIndex : 'file',
241                                     header : 'File',
242                                     width : 200,
243                                     renderer : function(v) { return String.format('{0}', v); }
244                                 },
245                                 {
246                                     xtype: 'ColumnModel',
247                                     xns: Roo.grid,
248                                     dataIndex : 'added',
249                                     header : 'Added',
250                                     width : 200,
251                                     renderer : function(v) { return String.format('{0}', v); }
252                                 },
253                                 {
254                                     xtype: 'ColumnModel',
255                                     xns: Roo.grid,
256                                     header : 'Seqid',
257                                     width : 75,
258                                     dataIndex : 'seqid',
259                                     renderer : function(v) { return String.format('{0}', v); }
260                                 }
261                             ]
262                         }
263                     },
264                     {
265                         xtype: 'ContentPanel',
266                         xns: Roo,
267                         region : 'south',
268                         title : "Review Changes"
269                     }
270                 ],
271                 west : {
272                     xtype: 'LayoutRegion',
273                     xns: Roo,
274                     split : true,
275                     width : 200
276                 },
277                 center : {
278                     xtype: 'LayoutRegion',
279                     xns: Roo
280                 },
281                 south : {
282                     xtype: 'LayoutRegion',
283                     xns: Roo,
284                     height : 200,
285                     split : true,
286                     titlebar : true
287                 }
288             }
289         });
290         this.layout = this.panel.layout;
291
292     }
293 });