php warnings
[Pman.MTrack] / Pman.Tab.MTrackMerger.js
index 0549d76..6e81882 100644 (file)
 
 // Auto generated file - created by app.Builder.js- do not edit directly (at present!)
 
+Roo.namespace('Pman.Tab');
 
+Pman.Tab.MTrackMerger = new Roo.XComponent({
 
-// register the module first
-Pman.on('beforeload', function()
-{
-    Pman.register({
-        modKey : '400-Pman.Tab.MTrackMerger',
-        module : Pman.Tab.MTrackMerger,
-        region : 'center',
-        parent : Pman.Tab.MTrack,
-        name : "Pman.Tab.MTrackMerger",
-        disabled : false, 
-        permname: '' 
-    });
-});
-
-Pman.Tab.MTrackMerger = new Roo.util.Observable({
-
-    panel : false,
-    disabled : false,
-    parentLayout:  false,
-
-    add : function(parentLayout, region)
-    {
-
-        var _this = this;
-        this.parentLayout = parentLayout;
+ _strings : {
+  'cd23e6cc0233eef073cbed0cfebcd6a1' :"Create Commit Using Patch",
+  'f29ddbfb905eb2593fdcdfb243f9af85' :"Added",
+  '66717bf2b8235cc94a52d5b815d57a54' :"Review Changes",
+  '06f5aa315f44a2147bab17980d1f6570' :"Merge Commits",
+  'c671c787b49f50a3ace9fdc5bd597825' :"core_enum",
+  '93f07b720ebf7d1246512569761a5804' :"Removed",
+  '4d1c8263ba1036754f8db14a98f9f006' :"Reload",
+  '21bcad367951f7c2e761f744423161b6' :"Create Commit Using Merge",
+  'e63695c4dea40eefb2ef481c7b242192' :"All Changes",
+  '0b27918290ff5323bea1e3b78a9cf04e' :"File"
+ },
 
-        this.panel = parentLayout.addxtype({
-            xtype: 'NestedLayoutPanel',
-            xns: Roo,
-            listeners : {
-                activate : function (_self)
-                {
-                   try {
-                        var t = _this.tree.tree;
-                        t.loader.load(t.root);
-                    } catch(e) {}
-                }
-            },
-            background : true,
-            region : 'center',
-            title : "Merge Commits",
-            layout : {
-                xtype: 'BorderLayout',
-                xns: Roo,
-                items : [
-                    {
-                        xtype: 'TreePanel',
-                        xns: Roo,
-                        listeners : {
-                            render : function (_self)
-                            {
-                              _this.tree = _self;
-                            }
-                        },
-                        autoScroll : true,
-                        fitToFrame : true,
-                        region : 'west',
-                        toolbar : {
-                            xtype: 'Toolbar',
-                            xns: Roo,
-                            items : [
-                                {
-                                    xtype: 'Button',
-                                    xns: Roo.Toolbar,
-                                    listeners : {
-                                        click : function (_self, e)
-                                        {
-                                          var t = _this.tree.tree;
-                                          t.loader.load(t.root);
-                                        }
-                                    },
-                                    text : "Reload"
-                                }
-                            ]
-                        },
-                        tree : {
-                            xtype: 'TreePanel',
-                            xns: Roo.tree,
-                            listeners : {
-                                click : function (node, e)
-                                {
-                                
-                                   _this.grid.ds.load.defer(100, _this.grid.ds, [ {} ]);
-                                }
-                            },
-                            loader : {
-                                xtype: 'TreeLoader',
-                                xns: Roo.tree,
-                                listeners : {
-                                    beforeload : function (This, node, callback)
-                                    {
-                                       _this.tree.el.mask("Loading");
-                                    },
-                                    load : function (This, node, response)
-                                    {
-                                         _this.tree.el.unmask();
-                                         _this.tree.tree.root.expand(false,true);
-                                    },
-                                    loadexception : function (This, node, response)
-                                    {
-                                     _this.tree.el.unmask();
-                                    }
-                                },
-                                requestMethod : 'GET',
-                                root : 'data',
-                                baseParams : { _tree : 1 },
-                                dataUrl : baseURL + '/MTrack/Merger'
+  part     :  ["MTrack", "Merger" ],
+  order    : '400-Pman.Tab.MTrackMerger',
+  region   : 'center',
+  parent   : 'Pman.Tab.MTrack',
+  name     : "Pman.Tab.MTrackMerger",
+  disabled : false, 
+  permname : '', 
+  _tree : function(_data)
+  {
+   var _this = this;
+   var MODULE = this;
+   return {
+   xtype : 'NestedLayoutPanel',
+   background : true,
+   region : 'center',
+   title : _this._strings['06f5aa315f44a2147bab17980d1f6570'] /* Merge Commits */,
+   listeners : {
+    activate : function (_self)
+     {
+        try {
+             var t = _this.tree.tree;
+             t.loader.load(t.root);
+         } catch(e) {}
+     }
+   },
+   xns : Roo,
+   '|xns' : 'Roo',
+   layout : {
+    xtype : 'BorderLayout',
+    xns : Roo,
+    '|xns' : 'Roo',
+    center : {
+     xtype : 'LayoutRegion',
+     xns : Roo,
+     '|xns' : 'Roo'
+    },
+    west : {
+     xtype : 'LayoutRegion',
+     split : true,
+     width : 200,
+     xns : Roo,
+     '|xns' : 'Roo'
+    },
+    south : {
+     xtype : 'LayoutRegion',
+     height : 200,
+     split : true,
+     titlebar : true,
+     xns : Roo,
+     '|xns' : 'Roo'
+    },
+    items  : [
+     {
+      xtype : 'TreePanel',
+      autoScroll : true,
+      fitToFrame : true,
+      region : 'west',
+      listeners : {
+       render : function (_self)
+        {
+          _this.tree = _self;
+        }
+      },
+      xns : Roo,
+      '|xns' : 'Roo',
+      toolbar : {
+       xtype : 'Toolbar',
+       xns : Roo,
+       '|xns' : 'Roo',
+       items  : [
+        {
+         xtype : 'Button',
+         text : _this._strings['4d1c8263ba1036754f8db14a98f9f006'] /* Reload */,
+         listeners : {
+          click : function (_self, e)
+           {
+             var t = _this.tree.tree;
+             t.loader.load(t.root);
+           }
+         },
+         xns : Roo.Toolbar,
+         '|xns' : 'Roo.Toolbar'
+        }
+       ]
+      },
+      tree : {
+       xtype : 'TreePanel',
+       listeners : {
+        click : function (node, e)
+         {
+         
+            _this.grid.ds.load.defer(100, _this.grid.ds, [ {} ]);
+         }
+       },
+       xns : Roo.tree,
+       '|xns' : 'Roo.tree',
+       root : {
+        xtype : 'TreeNode',
+        text : _this._strings['e63695c4dea40eefb2ef481c7b242192'] /* All Changes */,
+        xns : Roo.tree,
+        '|xns' : 'Roo.tree'
+       },
+       loader : {
+        xtype : 'TreeLoader',
+        baseParams : { _tree : 1 },
+        dataUrl : baseURL + '/MTrack/Merger',
+        requestMethod : 'GET',
+        root : 'data',
+        listeners : {
+         beforeload : function (This, node, callback)
+          {
+             _this.tree.el.mask("Loading");
+          },
+         load : function (This, node, response)
+          {
+               _this.tree.el.unmask();
+               _this.tree.tree.root.expand(false,true);
+          },
+         loadexception : function (This, node, response)
+          {
+           _this.tree.el.unmask();
+          }
+        },
+        xns : Roo.tree,
+        '|xns' : 'Roo.tree'
+       }
+      }
+     },
+     {
+      xtype : 'GridPanel',
+      background : true,
+      fitContainer : true,
+      fitToframe : true,
+      region : 'center',
+      tableName : 'core_enum',
+      title : _this._strings['c671c787b49f50a3ace9fdc5bd597825'] /* core_enum */,
+      listeners : {
+       activate : function() {
+            _this.panel = this;
+            if (_this.grid) {
+                //_this.grid.footer.onClick('first');
+            }
+        }
+      },
+      xns : Roo,
+      '|xns' : 'Roo',
+      grid : {
+       xtype : 'Grid',
+       autoExpandColumn : 'etype',
+       loadMask : true,
+       listeners : {
+        render : function() 
+         {
+             _this.grid = this; 
+             //_this.dialog = Pman.Dialog.FILL_IN
+             if (_this.panel.active) {
+                //this.footer.onClick('first');
+             }
+         },
+        rowdblclick : function (_self, rowIndex, e)
+         {
+             if (!_this.dialog) { return; }
+             _this.dialog.show( this.getDataSource().getAt(rowIndex), function() {
+                 _this.grid.footer.onClick('first');
+             }); 
+         }
+       },
+       xns : Roo.grid,
+       '|xns' : 'Roo.grid',
+       toolbar : {
+        xtype : 'Toolbar',
+        xns : Roo,
+        '|xns' : 'Roo',
+        items  : [
+         {
+          xtype : 'Button',
+          cls : 'x-btn-text-icon',
+          icon : Roo.rootURL + 'images/default/dd/drop-add.gif',
+          text : _this._strings['cd23e6cc0233eef073cbed0cfebcd6a1'] /* Create Commit Using Patch */,
+          listeners : {
+           click : function()
+            {
+                // if we are just copying a simple commit accross with a valid message
+                // then this could contain the original commit message..
+               if (! _this.tree.tree.selModel.getSelectedNode()) {
+                  Roo.MessageBox.alert("Error", "select a revision");
+                  return ;
+               }
+               var ar = _this.grid.sm.getSelections();
+               var files = [];
+               Roo.each(ar, function(s) {
+                    files.push(s.data.filename);
+               
+               });
+               
+               if (!files.length) {
+                  Roo.MessageBox.alert("Error", "select some files");
+                  return ;
+               }
+                
+            
+                Roo.MessageBox.show({
+                   title: "Create a Commit",
+                   msg: "Enter commit message",
+                   width:300,
+                   buttons: Roo.MessageBox.OKCANCEL,
+                   multiline: true,
+                   fn: function(btn, msg) {
+            
+                     if (btn != 'ok') {
+                         return;
+                      }
+                      new Pman.Request({
+                            method : 'POST',
+                            url : baseURL + '/MTrack/Merger',
+                            params : { 
+                                message : msg,
+                                _merge : _this.tree.tree.selModel.getSelectedNode().attributes.rev,
+                                files :  Roo.encode(files)
                             },
-                            root : {
-                                xtype: 'TreeNode',
-                                xns: Roo.tree,
-                                text : "All Changes"
-                            }
-                        }
-                    },
-                    {
-                        xtype: 'GridPanel',
-                        xns: Roo,
-                        listeners : {
-                            activate : function() {
-                                _this.panel = this;
-                                if (_this.grid) {
-                                    //_this.grid.footer.onClick('first');
-                                }
+                            success : function () {
+                               // reload the grid..
+                               _this.grid.ds.load({});
                             }
-                        },
-                        background : true,
-                        fitContainer : true,
-                        fitToframe : true,
-                        region : 'center',
-                        tableName : 'core_enum',
-                        title : "core_enum",
-                        grid : {
-                            xtype: 'Grid',
-                            xns: Roo.grid,
-                            listeners : {
-                                render : function() 
-                                {
-                                    _this.grid = this; 
-                                    //_this.dialog = Pman.Dialog.FILL_IN
-                                    if (_this.panel.active) {
-                                       //this.footer.onClick('first');
-                                    }
-                                },
-                                rowdblclick : function (_self, rowIndex, e)
-                                {
-                                    if (!_this.dialog) return;
-                                    _this.dialog.show( this.getDataSource().getAt(rowIndex), function() {
-                                        _this.grid.footer.onClick('first');
-                                    }); 
-                                }
-                            },
-                            autoExpandColumn : 'etype',
-                            loadMask : true,
-                            dataSource : {
-                                xtype: 'Store',
-                                xns: Roo.data,
-                                listeners : {
-                                    beforeload : function (_self, options)
-                                    {
-                                       if (!_this.tree.tree.selModel.getSelectedNode()) {
-                                           return false;
-                                       }
-                                       
-                                       options.params = {   
-                                          _changedFiles : _this.tree.tree.selModel.getSelectedNode().attributes.rev
-                                          };
-                                    },
-                                    load : function (_self, records, options)
-                                    {
-                                       // clear selections??
-                                       _this.preview.load({
-                                          method : 'POST',
-                                          url : baseURL + '/MTrack/Merger',
-                                          params : {
-                                              _preview :  _this.tree.tree.selModel.getSelectedNode().attributes.rev
-                                          }
-                                      });
-                                          
-                                    
-                                    }
-                                },
-                                remoteSort : false,
-                                sortInfo : { field: 'filename', dir : 'ASC' },
-                                proxy : {
-                                    xtype: 'HttpProxy',
-                                    xns: Roo.data,
-                                    method : 'GET',
-                                    url : baseURL + '/MTrack/Merger.php'
-                                },
-                                reader : {
-                                    xtype: 'JsonReader',
-                                    xns: Roo.data,
-                                    id : 'id',
-                                    root : 'data',
-                                    totalProperty : 'total',
-                                    fields : [
-                                        {
-                                            'name': 'id',
-                                            'type': 'int'
-                                        },
-                                        {
-                                            'name': 'filename',
-                                            'type': 'string'
-                                        },
-                                        {
-                                            'name': 'added',
-                                            'type': 'int'
-                                        },
-                                        {
-                                            'name': 'removed',
-                                            'type': 'int'
-                                        }
-                                    
-                                    ]
-                                }
-                            },
-                            sm : {
-                                xtype: 'RowSelectionModel',
-                                xns: Roo.grid,
-                                listeners : {
-                                    selectionchange : function (_self)
-                                    {
-                                       var ar = this.getSelections();
-                                       if (!ar.length) {
-                                         // show whole change.
-                                         _this.preview.load({
-                                              method : 'POST',
-                                              url : baseURL + '/MTrack/Merger',
-                                              params : {
-                                                  _preview :  _this.tree.tree.selModel.getSelectedNode().attributes.rev
-                                              }
-                                          });
-                                          return;
-                                       }
-                                       var files = []
-                                       Roo.each(ar, function(s) {
-                                            files.push(s.data.filename);
-                                       
-                                       });
-                                         _this.preview.load({
-                                              method : 'POST',
-                                              url : baseURL + '/MTrack/Merger',
-                                              params : {
-                                                  _preview :  _this.tree.tree.selModel.getSelectedNode().attributes.rev,
-                                                  files:  Roo.encode(files)
-                                              }
-                                          });   
-                                       
-                                       
-                                    },
-                                    afterselectionchange : function (_self)
-                                    {
-                                       var ar = this.getSelections();
-                                       if (!ar.length) {
-                                         // show whole change.
-                                         _this.preview.load({
-                                              method : 'POST',
-                                              url : baseURL + '/MTrack/Merger',
-                                              params : {
-                                                  _preview :  _this.tree.tree.selModel.getSelectedNode().attributes.rev
-                                              }
-                                          });
-                                          return;
-                                       }
-                                       var files = []
-                                       Roo.each(ar, function(s) {
-                                            files.push(s.data.filename);
-                                       
-                                       });
-                                         _this.preview.load({
-                                              method : 'POST',
-                                              url : baseURL + '/MTrack/Merger',
-                                              params : {
-                                                  _preview :  _this.tree.tree.selModel.getSelectedNode().attributes.rev,
-                                                  files:  Roo.encode(files)
-                                              }
-                                          });   
-                                       
-                                       
-                                    }
-                                },
-                                singleSelect : false
-                            },
-                            toolbar : {
-                                xtype: 'Toolbar',
-                                xns: Roo,
-                                items : [
-                                    {
-                                        xtype: 'Button',
-                                        xns: Roo.Toolbar,
-                                        listeners : {
-                                            click : function()
-                                            {
-                                                // if we are just copying a simple commit accross with a valid message
-                                                // then this could contain the original commit message..
-                                               if (! _this.tree.tree.selModel.getSelectedNode()) {
-                                                  Roo.MessageBox.alert("Error", "select a revision");
-                                                  return ;
-                                               }
-                                               var ar = _this.grid.sm.getSelections();
-                                               var files = []
-                                               Roo.each(ar, function(s) {
-                                                    files.push(s.data.filename);
-                                               
-                                               });
-                                               
-                                               if (!files.length) {
-                                                        Roo.MessageBox.alert("Error", "select some files");
-                                                  return ;
-                                               }
-                                                
-                                            
-                                                Roo.MessageBox.show({
-                                                   title: "Create a Commit",
-                                                   msg: "Enter commit message",
-                                                   width:300,
-                                                   buttons: Roo.MessageBox.OKCANCEL,
-                                                   multiline: true,
-                                                   fn: function(btn, msg) {
-                                            
-                                                     if (btn != 'ok') {
-                                                         return;
-                                                      }
-                                                      new Pman.Request({
-                                                            method : 'POST',
-                                                            url : baseURL + '/MTrack/Merger',
-                                                            params : { 
-                                                                message : msg,
-                                                                _merge : _this.tree.tree.selModel.getSelectedNode().attributes.rev,
-                                                                files : Roo.encode(files),
-                                                            },
-                                                            success : function () {
-                                                               // reload the grid..
-                                                               _this.grid.ds.load({});
-                                                            }
-                                                       });
-                                                   },
-                                                   animEl: this.el
-                                               });
-                                            }
-                                        },
-                                        cls : 'x-btn-text-icon',
-                                        text : "Create Commit",
-                                        icon : Roo.rootURL + 'images/default/dd/drop-add.gif'
-                                    }
-                                ]
+                       });
+                   },
+                   animEl: this.el
+               });
+            }
+          },
+          xns : Roo.Toolbar,
+          '|xns' : 'Roo.Toolbar'
+         },
+         {
+          xtype : 'Button',
+          cls : 'x-btn-text-icon',
+          icon : Roo.rootURL + 'images/default/dd/drop-add.gif',
+          text : _this._strings['21bcad367951f7c2e761f744423161b6'] /* Create Commit Using Merge */,
+          listeners : {
+           click : function()
+            {
+                // if we are just copying a simple commit accross with a valid message
+                // then this could contain the original commit message..
+               if (! _this.tree.tree.selModel.getSelectedNode()) {
+                  Roo.MessageBox.alert("Error", "select a revision");
+                  return ;
+               }
+                
+                
+            
+                Roo.MessageBox.show({
+                   title: "Create a Commit",
+                   msg: "Enter commit message",
+                   width:300,
+                   buttons: Roo.MessageBox.OKCANCEL,
+                   multiline: true,
+                   fn: function(btn, msg) {
+            
+                     if (btn != 'ok') {
+                         return;
+                      }
+                      new Pman.Request({
+                            method : 'POST',
+                            url : baseURL + '/MTrack/Merger',
+                            params : { 
+                                message : msg,
+                                _merge : _this.tree.tree.selModel.getSelectedNode().attributes.rev,
+                                files :   '_all_'   
                             },
-                            colModel : [
-                                {
-                                    xtype: 'ColumnModel',
-                                    xns: Roo.grid,
-                                    dataIndex : 'filename',
-                                    header : 'File',
-                                    width : 200,
-                                    renderer : function(v) { return String.format('{0}', v); }
-                                },
-                                {
-                                    xtype: 'ColumnModel',
-                                    xns: Roo.grid,
-                                    dataIndex : 'added',
-                                    header : 'Added',
-                                    width : 50,
-                                    renderer : function(v) { return String.format('{0}', v); }
-                                },
-                                {
-                                    xtype: 'ColumnModel',
-                                    xns: Roo.grid,
-                                    dataIndex : 'removed',
-                                    header : 'Removed',
-                                    width : 50,
-                                    renderer : function(v) { return String.format('{0}', v); }
-                                }
-                            ]
-                        }
-                    },
-                    {
-                        xtype: 'ContentPanel',
-                        xns: Roo,
-                        listeners : {
-                            render : function (_self)
-                            {
-                              _this.preview = _self;
+                            success : function () {
+                               // reload the grid..
+                                var t = _this.tree.tree;
+                                t.loader.load(t.root);
                             }
-                        },
-                        autoScroll : true,
-                        fitToFrame : true,
-                        region : 'south',
-                        title : "Review Changes"
-                    }
-                ],
-                west : {
-                    xtype: 'LayoutRegion',
-                    xns: Roo,
-                    split : true,
-                    width : 200
-                },
-                center : {
-                    xtype: 'LayoutRegion',
-                    xns: Roo
-                },
-                south : {
-                    xtype: 'LayoutRegion',
-                    xns: Roo,
-                    height : 200,
-                    split : true,
-                    titlebar : true
-                }
+                       });
+                   },
+                   animEl: this.el
+               });
             }
-        });
-        this.layout = this.panel.layout;
-
-    }
+          },
+          xns : Roo.Toolbar,
+          '|xns' : 'Roo.Toolbar'
+         }
+        ]
+       },
+       dataSource : {
+        xtype : 'Store',
+        remoteSort : false,
+        sortInfo : { field: 'filename', dir : 'ASC' },
+        listeners : {
+         beforeload : function (_self, options)
+          {
+             if (!_this.tree.tree.selModel.getSelectedNode()) {
+                 return false;
+             }
+             
+             options.params = {   
+                _changedFiles : _this.tree.tree.selModel.getSelectedNode().attributes.rev
+                };
+          },
+         load : function (_self, records, options)
+          {
+             // clear selections??
+             _this.preview.load({
+                method : 'POST',
+                url : baseURL + '/MTrack/Merger',
+                params : {
+                    _preview :  _this.tree.tree.selModel.getSelectedNode().attributes.rev
+                }
+            });
+                
+          
+          }
+        },
+        xns : Roo.data,
+        '|xns' : 'Roo.data',
+        proxy : {
+         xtype : 'HttpProxy',
+         method : 'GET',
+         url : baseURL + '/MTrack/Merger.php',
+         xns : Roo.data,
+         '|xns' : 'Roo.data'
+        },
+        reader : {
+         xtype : 'JsonReader',
+         fields : [
+             {
+                 'name': 'id',
+                 'type': 'int'
+             },
+             {
+                 'name': 'filename',
+                 'type': 'string'
+             },
+             {
+                 'name': 'added',
+                 'type': 'int'
+             },
+             {
+                 'name': 'removed',
+                 'type': 'int'
+             }
+         
+         ],
+         id : 'id',
+         root : 'data',
+         totalProperty : 'total',
+         xns : Roo.data,
+         '|xns' : 'Roo.data'
+        }
+       },
+       sm : {
+        xtype : 'RowSelectionModel',
+        singleSelect : false,
+        listeners : {
+         afterselectionchange : function (_self)
+          {
+             var ar = this.getSelections();
+             if (!ar.length) {
+               // show whole change.
+               _this.preview.load({
+                    method : 'POST',
+                    url : baseURL + '/MTrack/Merger',
+                    params : {
+                        _preview :  _this.tree.tree.selModel.getSelectedNode().attributes.rev
+                    }
+                });
+                return;
+             }
+             var files = [];
+             Roo.each(ar, function(s) {
+                  files.push(s.data.filename);
+             
+             });
+               _this.preview.load({
+                    method : 'POST',
+                    url : baseURL + '/MTrack/Merger',
+                    params : {
+                        _preview :  _this.tree.tree.selModel.getSelectedNode().attributes.rev,
+                        files:  Roo.encode(files)
+                    }
+                });   
+             
+             
+          }
+        },
+        xns : Roo.grid,
+        '|xns' : 'Roo.grid'
+       },
+       colModel : [
+        {
+         xtype : 'ColumnModel',
+         dataIndex : 'filename',
+         header : _this._strings['0b27918290ff5323bea1e3b78a9cf04e'] /* File */,
+         renderer : function(v) { return String.format('{0}', v); },
+         width : 200,
+         xns : Roo.grid,
+         '|xns' : 'Roo.grid'
+        },
+        {
+         xtype : 'ColumnModel',
+         dataIndex : 'added',
+         header : _this._strings['f29ddbfb905eb2593fdcdfb243f9af85'] /* Added */,
+         renderer : function(v) { return String.format('{0}', v); },
+         width : 50,
+         xns : Roo.grid,
+         '|xns' : 'Roo.grid'
+        },
+        {
+         xtype : 'ColumnModel',
+         dataIndex : 'removed',
+         header : _this._strings['93f07b720ebf7d1246512569761a5804'] /* Removed */,
+         renderer : function(v) { return String.format('{0}', v); },
+         width : 50,
+         xns : Roo.grid,
+         '|xns' : 'Roo.grid'
+        }
+       ]
+      }
+     },
+     {
+      xtype : 'ContentPanel',
+      autoScroll : true,
+      fitToFrame : true,
+      region : 'south',
+      title : _this._strings['66717bf2b8235cc94a52d5b815d57a54'] /* Review Changes */,
+      listeners : {
+       render : function (_self)
+        {
+          _this.preview = _self;
+        }
+      },
+      xns : Roo,
+      '|xns' : 'Roo'
+     }
+    ]
+   }
+  };  }
 });