old/Pman.Tab.AdminPermMembers.bjs
authoredward <edward@roojs.com>
Wed, 31 May 2017 09:09:20 +0000 (17:09 +0800)
committeredward <edward@roojs.com>
Wed, 31 May 2017 09:09:20 +0000 (17:09 +0800)
old/Pman.Tab.AdminPermMembers.js

old/Pman.Tab.AdminPermMembers.bjs
old/Pman.Tab.AdminPermMembers.js

index dcba1e3..276c95c 100644 (file)
@@ -2,17 +2,37 @@
  "name" : "Pman.Tab.AdminPermMembers",
  "parent" : "Pman.Tab.AdminPermManager",
  "title" : "Pman.Tab.AdminPermMembers",
- "path" : "/home/michael/gitlive/Pman.Admin/old/Pman.Tab.AdminPermMembers.bjs",
+ "path" : "/home/edward/gitlive/Pman.Admin/old/Pman.Tab.AdminPermMembers.bjs",
  "permname" : "",
  "modOrder" : "001",
+ "strings" : {
+  "1c76cbfe21c6f44c1d1e59d54f3e4420" : "Company",
+  "ce8ae9da5b7cd6c3df2929543a9af92d" : "Email",
+  "8444e81d652b084d70c71cd7d19ac0cf" : "Displaying Person{0} - {1} of {2}",
+  "ec211f7c20af43e742bf2570c3cb84f9" : "Add",
+  "13348442cc6a27032d2b4aa28b75a5d3" : "Search",
+  "9e727fdd3aec8274f46685441900280d" : "Project",
+  "7dce122004969d56ae2e0245cb754d35" : "Edit",
+  "4110db87ce3ac86d603d03d691616b1e" : "Drag person to add or remove from group",
+  "bcc254b55c4a1babdf1dcb82c207506b" : "Phone",
+  "40bed7cf9b3d4bb3a3d7a7e3eb18c5eb" : "Person",
+  "f1174ecbbc232f948717979daf04cf08" : "No Person found",
+  "a93806efd0cc7a149f0f03e2b9a0f862" : "Bulk Add",
+  "a1fa27779242b4902f7ae3bdd5c6d508" : "Type",
+  "49ee3087348e8d44e1feda1917443987" : "Name",
+  "bbbabdbe1b262f75d99d62880b953be1" : "Role",
+  "4d3d769b812b6faa6b76e1a8abaece2d" : "Active",
+  "d4d25ad0a12e8d30e9d8d35230f6d1d3" : "Show Removed",
+  "9810aa2b9f44401be4bf73188ef2b67d" : "Fax"
+ },
  "items" : [
   {
    "listeners" : {
     "|activate" : "function() {\n    _this.panel = this;\n    if (_this.grid) {\n        _this.grid.footer.onClick('first');\n    }\n}"
    },
    "autoScroll" : true,
-   "fitToframe" : true,
    "background" : true,
+   "fitToframe" : true,
    "region" : "center",
    "title" : "Person",
    "xtype" : "GridPanel",
@@ -23,8 +43,8 @@
     {
      "listeners" : {
       "|rowdblclick" : "function (_self, rowIndex, e)\n{\n    if (!_this.dialog) return;\n    _this.dialog.show( this.getDataSource().getAt(rowIndex), function() {\n        _this.grid.footer.onClick('first');\n    }); \n}\n",
-      "|render" : "function() \n{\n    _this.grid = this; \n    if (!_this.dialog) {\n        _this.dialog = Pman.Dialog.PersonEdit;\n        \n    }\n    //_this.dialog = Pman.Dialog.FILL_IN\n    if (_this.panel.active) {\n       this.footer.onClick('first');\n    }\n}",
-      "cellclick" : "function (_self, rowIndex, columnIndex, e)\n{\n\n        var di = this.colModel.getDataIndex(columnIndex);\n        if (di != 'active') {\n            return;\n        }\n         \n        var rec = _this.grid.ds.getAt(rowIndex);\n        \n        rec.set('active', rec.data.active ? 0 : 1);\n        rec.commit();\n        Roo.select('.x-grid-row-selected').item(1).addClass('fadeout');\n        (function(){\n            _this.grid.footer.onClick('first');\n        }).defer(5000)();\n        \n}"
+      "cellclick" : "function (_self, rowIndex, columnIndex, e)\n{\n\n        var di = this.colModel.getDataIndex(columnIndex);\n        if (di != 'active') {\n            return;\n        }\n         \n        var rec = _this.grid.ds.getAt(rowIndex);\n        \n        rec.set('active', rec.data.active ? 0 : 1);\n        rec.commit();\n        Roo.select('.x-grid-row-selected').item(1).addClass('fadeout');\n        (function(){\n            _this.grid.footer.onClick('first');\n        }).defer(5000)();\n        \n}",
+      "|render" : "function() \n{\n    _this.grid = this; \n    if (!_this.dialog) {\n        _this.dialog = Pman.Dialog.PersonEdit;\n        \n    }\n    //_this.dialog = Pman.Dialog.FILL_IN\n    if (_this.panel.active) {\n       this.footer.onClick('first');\n    }\n}"
      },
      "autoExpandColumn" : "name",
      "xtype" : "Grid",
@@ -47,8 +67,8 @@
        "items" : [
         {
          "$ url" : "baseURL + '/Roo/core_person'",
-         "xtype" : "HttpProxy",
          "method" : "GET",
+         "xtype" : "HttpProxy",
          "$ xns" : "Roo.data",
          "* prop" : "proxy"
         },
       },
       {
        "xtype" : "ColumnModel",
-       "width" : 100,
        "header" : "Role",
+       "width" : 100,
        "$ renderer" : "function(v) { return String.format('{0}', v); }",
        "$ xns" : "Roo.grid",
        "* prop" : "colModel[]",
       },
       {
        "xtype" : "ColumnModel",
-       "width" : 100,
        "header" : "Phone",
+       "width" : 100,
        "$ renderer" : "function(v) { return String.format('{0}', v); }",
        "$ xns" : "Roo.grid",
        "* prop" : "colModel[]",
       },
       {
        "xtype" : "ColumnModel",
-       "width" : 100,
        "header" : "Fax",
+       "width" : 100,
        "$ renderer" : "function(v) { return String.format('{0}', v); }",
        "$ xns" : "Roo.grid",
        "* prop" : "colModel[]",
       },
       {
        "xtype" : "ColumnModel",
-       "width" : 75,
        "header" : "Active",
+       "width" : 75,
        "$ renderer" : "function(v) {  \n    var state = v> 0 ?  '-checked' : '';\n\n    return '<img class=\"x-grid-check-icon' + state + '\" src=\"' + Roo.BLANK_IMAGE_URL + '\"/>';\n                \n }",
        "$ xns" : "Roo.grid",
        "* prop" : "colModel[]",
index 07e4b7f..cfdc7a6 100644 (file)
@@ -5,6 +5,28 @@
 Roo.namespace('Pman.Tab');
 
 Pman.Tab.AdminPermMembers = new Roo.XComponent({
+
+ _strings : {
+  '1c76cbfe21c6f44c1d1e59d54f3e4420' :"Company",
+  'ce8ae9da5b7cd6c3df2929543a9af92d' :"Email",
+  '8444e81d652b084d70c71cd7d19ac0cf' :"Displaying Person{0} - {1} of {2}",
+  'ec211f7c20af43e742bf2570c3cb84f9' :"Add",
+  '13348442cc6a27032d2b4aa28b75a5d3' :"Search",
+  '9e727fdd3aec8274f46685441900280d' :"Project",
+  '7dce122004969d56ae2e0245cb754d35' :"Edit",
+  '4110db87ce3ac86d603d03d691616b1e' :"Drag person to add or remove from group",
+  'bcc254b55c4a1babdf1dcb82c207506b' :"Phone",
+  '40bed7cf9b3d4bb3a3d7a7e3eb18c5eb' :"Person",
+  'f1174ecbbc232f948717979daf04cf08' :"No Person found",
+  'a93806efd0cc7a149f0f03e2b9a0f862' :"Bulk Add",
+  'a1fa27779242b4902f7ae3bdd5c6d508' :"Type",
+  '49ee3087348e8d44e1feda1917443987' :"Name",
+  'bbbabdbe1b262f75d99d62880b953be1' :"Role",
+  '4d3d769b812b6faa6b76e1a8abaece2d' :"Active",
+  'd4d25ad0a12e8d30e9d8d35230f6d1d3' :"Show Removed",
+  '9810aa2b9f44401be4bf73188ef2b67d' :"Fax"
+ },
+
   part     :  ["old", "AdminPermMembers" ],
   order    : '001-Pman.Tab.AdminPermMembers',
   region   : 'center',
@@ -12,60 +34,357 @@ Pman.Tab.AdminPermMembers = new Roo.XComponent({
   name     : "Pman.Tab.AdminPermMembers",
   disabled : false, 
   permname : '', 
-  _tree : function()
+  _tree : function(_data)
   {
    var _this = this;
    var MODULE = this;
    return {
+   xtype : 'GridPanel',
+   autoScroll : true,
+   background : true,
+   fitContainer : true,
+   fitToframe : true,
+   region : 'center',
+   tableName : 'Person',
+   title : _this._strings['40bed7cf9b3d4bb3a3d7a7e3eb18c5eb'] /* Person */,
+   listeners : {
+    activate : function() {
+         _this.panel = this;
+         if (_this.grid) {
+             _this.grid.footer.onClick('first');
+         }
+     }
+   },
+   xns : Roo,
+   '|xns' : 'Roo',
    grid : {
+    xtype : 'Grid',
+    autoExpandColumn : 'name',
+    ddGroup : 'groupDD',
+    enableDrag : true,
+    loadMask : true,
+    listeners : {
+     cellclick : function (_self, rowIndex, columnIndex, e)
+      {
+      
+              var di = this.colModel.getDataIndex(columnIndex);
+              if (di != 'active') {
+                  return;
+              }
+               
+              var rec = _this.grid.ds.getAt(rowIndex);
+              
+              rec.set('active', rec.data.active ? 0 : 1);
+              rec.commit();
+              Roo.select('.x-grid-row-selected').item(1).addClass('fadeout');
+              (function(){
+                  _this.grid.footer.onClick('first');
+              }).defer(5000)();
+              
+      },
+     render : function() 
+      {
+          _this.grid = this; 
+          if (!_this.dialog) {
+              _this.dialog = Pman.Dialog.PersonEdit;
+              
+          }
+          //_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',
+    footer : {
+     xtype : 'PagingToolbar',
+     displayInfo : true,
+     displayMsg : _this._strings['8444e81d652b084d70c71cd7d19ac0cf'] /* Displaying Person{0} - {1} of {2} */,
+     emptyMsg : _this._strings['f1174ecbbc232f948717979daf04cf08'] /* No Person found */,
+     pageSize : 25,
+     xns : Roo,
+     '|xns' : 'Roo',
+     items  : [
+      {
+       xtype : 'TextItem',
+       text : _this._strings['4110db87ce3ac86d603d03d691616b1e'] /* Drag person to add or remove from group */,
+       xns : Roo.Toolbar,
+       '|xns' : 'Roo.Toolbar'
+      }
+     ]
+    },
+    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['ec211f7c20af43e742bf2570c3cb84f9'] /* Add */,
+       listeners : {
+        click : function()
+         {
+             
+             _this.dialog.show( { id : 0 } , function() {
+                 _this.grid.footer.onClick('first');
+            }); 
+         }
+       },
+       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['a93806efd0cc7a149f0f03e2b9a0f862'] /* Bulk Add */,
+       listeners : {
+        click : function()
+         {
+             
+             Pman.Dialog.PersonBulkAdd.show( { id : 0 } , function() {
+                 _this.grid.footer.onClick('first');
+            }); 
+         }
+       },
+       xns : Roo.Toolbar,
+       '|xns' : 'Roo.Toolbar'
+      },
+      {
+       xtype : 'Button',
+       cls : 'x-btn-text-icon',
+       icon : Roo.rootURL + 'images/default/tree/leaf.gif',
+       text : _this._strings['7dce122004969d56ae2e0245cb754d35'] /* Edit */,
+       listeners : {
+        click : function()
+         {
+             var s = _this.grid.getSelectionModel().getSelections();
+             if (!s.length || (s.length > 1))  {
+                 Roo.MessageBox.alert("Error", s.length ? "Select only one Row" : "Select a Row");
+                 return;
+             }
+           
+             _this.dialog.show(s[0].data, function() {
+                 _this.grid.footer.onClick('first');
+             }); 
+             
+         }
+       },
+       xns : Roo.Toolbar,
+       '|xns' : 'Roo.Toolbar'
+      },
+      {
+       xtype : 'Separator',
+       xns : Roo.Toolbar,
+       '|xns' : 'Roo.Toolbar'
+      },
+      {
+       xtype : 'TextItem',
+       text : _this._strings['13348442cc6a27032d2b4aa28b75a5d3'] /* Search */,
+       xns : Roo.Toolbar,
+       '|xns' : 'Roo.Toolbar'
+      },
+      {
+       xtype : 'TextField',
+       listeners : {
+        render : function (_self)
+         {
+             _this.searchBox = _self;
+         },
+        show : function (_self,e)
+         {
+             if (e.getCharCode() != 13) {
+                 return;
+             }
+             _this.grid.footer.onClick('first');
+         },
+        specialkey : function (_self, e)
+         {
+           if (e.getKey() == 13) {
+             _this.grid.footer.onClick('first');
+           }
+         }
+       },
+       xns : Roo.form,
+       '|xns' : 'Roo.form'
+      },
+      {
+       xtype : 'Button',
+       cls : 'x-btn-icon',
+       icon : rootURL + '/Pman/templates/images/search.gif',
+       listeners : {
+        click : function (_self, e)
+         {
+         _this.grid.footer.onClick('first');
+         }
+       },
+       xns : Roo.Toolbar,
+       '|xns' : 'Roo.Toolbar'
+      },
+      {
+       xtype : 'Button',
+       cls : 'x-btn-icon',
+       icon : rootURL + '/Pman/templates/images/edit-clear.gif',
+       listeners : {
+        click : function (_self, e)
+         {
+         _this.searchBox.setValue('');
+             _this.grid.footer.onClick('first');
+         }
+       },
+       xns : Roo.Toolbar,
+       '|xns' : 'Roo.Toolbar'
+      },
+      {
+       xtype : 'Fill',
+       xns : Roo.Toolbar,
+       '|xns' : 'Roo.Toolbar'
+      },
+      {
+       xtype : 'Button',
+       enableToggle : true,
+       text : _this._strings['d4d25ad0a12e8d30e9d8d35230f6d1d3'] /* Show Removed */,
+       listeners : {
+        render : function (_self)
+         {
+           _this.activeButton = _self;
+         },
+        toggle : function (_self, pressed)
+         {
+            _this.grid.footer.onClick('first');
+            this.setText(pressed ? "Show Active" : "Show Removed");
+            
+            
+         }
+       },
+       xns : Roo.Toolbar,
+       '|xns' : 'Roo.Toolbar'
+      }
+     ]
+    },
     dataSource : {
-     proxy : {
-      '|xns' : 'Roo.data',
-      url : baseURL + '/Roo/core_person',
-      xtype : 'HttpProxy',
-      method : 'GET',
-      xns : Roo.data
-     },
-     reader : {
-      '|xns' : 'Roo.data',
-      id : 'id',
-      root : 'data',
-      xtype : 'JsonReader',
-      xns : Roo.data,
-      fields : [
-          {
-              'name': 'id',
-              'type': 'int'
-          },
-          {
-              'name': 'office_id',
-              'type': 'int'
-          },
-          {
-              'name': 'name',
-              'type': 'string'
-          },
-          {
-              'name': 'phone',
-              'type': 'string'
-          },
-          {
-              'name': 'fax',
-              'type': 'string'
-          },
-          {
-              'name': 'email',
-              'type': 'string'
-          },
-          {
-              'name': 'company_id',
-              'type': 'int'
-          },
-          {
-              'name': 'role',
-              'type': 'string'
-          },
-          {
+     xtype : 'Store',
+     remoteSort : true,
+     sortInfo : { field : 'name', direction: 'ASC' },
+     listeners : {
+      beforeload : function (_self, o)
+       {
+         
+          // technically we may allow non-owner's to be in the group..
+          // need to work out how that will work...
+          // 
+          
+           //o.params['company_id_comptype'] = 'OWNER';
+           o.params['query[search]'] = _this.searchBox.getValue();
+           
+           if (!_this.activeButton) {return; false;}
+           
+           
+           o.params.active = _this.activeButton.pressed ? 0 : 1;
+           if (!Pman.Tab.AdminPermManager) { 
+               return false;
+           }
+           
+           
+           if (Pman.Tab.AdminPermManager && Pman.Tab.AdminPermManager.grid) {
+               var tms = Pman.Tab.AdminPermManager.grid.getSelectionModel().getSelected();
+               
+               if (!tms) {
+                   return false;
+               }
+               o.params['query[in_group]'] = tms.data.id;
+               o.params['query[type]'] = 0; // group type..
+               
+           }
+           //o.params['query[name]'] = _this.searchBox.getValue();
+         
+           
+       },
+      update : function (_self, record, operation)
+       {
+           if (operation != 'commit') {
+               return;
+           }
+           // only used to change active status.
+           
+           new Pman.Request({
+               url : baseURL + '/Roo/core_person',
+               method :'POST',
+               params : {
+                   id : record.data.id,
+                   active: record.data.active
+                   
+               },
+               success : function() {
+                   // do nothing
+                   
+                   _this.grid.ds.remove(record);
+                   
+               },
+               failure : function() 
+               {
+                   Roo.MessageBox.alert("Error", "saving failed", function() {
+                       _this.grid.footer.onClick('first');
+                   });
+               }
+           });
+       }
+     },
+     xns : Roo.data,
+     '|xns' : 'Roo.data',
+     proxy : {
+      xtype : 'HttpProxy',
+      method : 'GET',
+      url : baseURL + '/Roo/core_person',
+      xns : Roo.data,
+      '|xns' : 'Roo.data'
+     },
+     reader : {
+      xtype : 'JsonReader',
+      fields : [
+          {
+              'name': 'id',
+              'type': 'int'
+          },
+          {
+              'name': 'office_id',
+              'type': 'int'
+          },
+          {
+              'name': 'name',
+              'type': 'string'
+          },
+          {
+              'name': 'phone',
+              'type': 'string'
+          },
+          {
+              'name': 'fax',
+              'type': 'string'
+          },
+          {
+              'name': 'email',
+              'type': 'string'
+          },
+          {
+              'name': 'company_id',
+              'type': 'int'
+          },
+          {
+              'name': 'role',
+              'type': 'string'
+          },
+          {
               'name': 'active',
               'type': 'int'
           },
@@ -338,440 +657,129 @@ Pman.Tab.AdminPermMembers = new Roo.XComponent({
               'type': 'int'
           }
       ],
-      totalProperty : 'total'
-     },
-     '|xns' : 'Roo.data',
-     xtype : 'Store',
-     remoteSort : true,
-     sortInfo : { field : 'name', direction: 'ASC' },
-     xns : Roo.data,
-     listeners : {
-      update : function (_self, record, operation)
-       {
-           if (operation != 'commit') {
-               return;
-           }
-           // only used to change active status.
-           
-           new Pman.Request({
-               url : baseURL + '/Roo/core_person',
-               method :'POST',
-               params : {
-                   id : record.data.id,
-                   active: record.data.active
-                   
-               },
-               success : function() {
-                   // do nothing
-                   
-                   _this.grid.ds.remove(record);
-                   
-               },
-               failure : function() 
-               {
-                   Roo.MessageBox.alert("Error", "saving failed", function() {
-                       _this.grid.footer.onClick('first');
-                   });
-               }
-           });
-       },
-      beforeload : function (_self, o)
-       {
-         
-          // technically we may allow non-owner's to be in the group..
-          // need to work out how that will work...
-          // 
-          
-           //o.params['company_id_comptype'] = 'OWNER';
-           o.params['query[search]'] = _this.searchBox.getValue();
-           
-           if (!_this.activeButton) {return; false;}
-           
-           
-           o.params.active = _this.activeButton.pressed ? 0 : 1;
-           if (!Pman.Tab.AdminPermManager) { 
-               return false;
-           }
-           
-           
-           if (Pman.Tab.AdminPermManager && Pman.Tab.AdminPermManager.grid) {
-               var tms = Pman.Tab.AdminPermManager.grid.getSelectionModel().getSelected();
-               
-               if (!tms) {
-                   return false;
-               }
-               o.params['query[in_group]'] = tms.data.id;
-               o.params['query[type]'] = 0; // group type..
-               
-           }
-           //o.params['query[name]'] = _this.searchBox.getValue();
-         
-           
-       }
-     },
-     items : [
-
-     ]
-
-    },
-    footer : {
-     '|xns' : 'Roo',
-     pageSize : 25,
-     xtype : 'PagingToolbar',
-     emptyMsg : "No Person found",
-     xns : Roo,
-     displayInfo : true,
-     displayMsg : "Displaying Person{0} - {1} of {2}",
-     items : [
-      {
-       '|xns' : 'Roo.Toolbar',
-       text : "Drag person to add or remove from group",
-       xtype : 'TextItem',
-       xns : Roo.Toolbar
-      }
-     ]
-
-    },
-    toolbar : {
-     '|xns' : 'Roo',
-     xtype : 'Toolbar',
-     xns : Roo,
-     items : [
-      {
-       '|xns' : 'Roo.Toolbar',
-       text : "Add",
-       xtype : 'Button',
-       cls : 'x-btn-text-icon',
-       icon : Roo.rootURL + 'images/default/dd/drop-add.gif',
-       xns : Roo.Toolbar,
-       listeners : {
-        click : function()
-         {
-             
-             _this.dialog.show( { id : 0 } , function() {
-                 _this.grid.footer.onClick('first');
-            }); 
-         }
-       }
-      },
-      {
-       '|xns' : 'Roo.Toolbar',
-       text : "Bulk Add",
-       xtype : 'Button',
-       cls : 'x-btn-text-icon',
-       icon : Roo.rootURL + 'images/default/dd/drop-add.gif',
-       xns : Roo.Toolbar,
-       listeners : {
-        click : function()
-         {
-             
-             Pman.Dialog.PersonBulkAdd.show( { id : 0 } , function() {
-                 _this.grid.footer.onClick('first');
-            }); 
-         }
-       }
-      },
-      {
-       '|xns' : 'Roo.Toolbar',
-       text : "Edit",
-       xtype : 'Button',
-       cls : 'x-btn-text-icon',
-       icon : Roo.rootURL + 'images/default/tree/leaf.gif',
-       xns : Roo.Toolbar,
-       listeners : {
-        click : function()
-         {
-             var s = _this.grid.getSelectionModel().getSelections();
-             if (!s.length || (s.length > 1))  {
-                 Roo.MessageBox.alert("Error", s.length ? "Select only one Row" : "Select a Row");
-                 return;
-             }
-           
-             _this.dialog.show(s[0].data, function() {
-                 _this.grid.footer.onClick('first');
-             }); 
-             
-         }
-       }
-      },
-      {
-       '|xns' : 'Roo.Toolbar',
-       xtype : 'Separator',
-       xns : Roo.Toolbar
-      },
-      {
-       '|xns' : 'Roo.Toolbar',
-       text : "Search",
-       xtype : 'TextItem',
-       xns : Roo.Toolbar
-      },
-      {
-       '|xns' : 'Roo.form',
-       xtype : 'TextField',
-       xns : Roo.form,
-       listeners : {
-        specialkey : function (_self, e)
-         {
-           if (e.getKey() == 13) {
-             _this.grid.footer.onClick('first');
-           }
-         },
-        show : function (_self,e)
-         {
-             if (e.getCharCode() != 13) {
-                 return;
-             }
-             _this.grid.footer.onClick('first');
-         },
-        render : function (_self)
-         {
-             _this.searchBox = _self;
-         }
-       }
-      },
-      {
-       '|xns' : 'Roo.Toolbar',
-       xtype : 'Button',
-       cls : 'x-btn-icon',
-       icon : rootURL + '/Pman/templates/images/search.gif',
-       xns : Roo.Toolbar,
-       listeners : {
-        click : function (_self, e)
-         {
-         _this.grid.footer.onClick('first');
-         }
-       }
-      },
-      {
-       '|xns' : 'Roo.Toolbar',
-       xtype : 'Button',
-       cls : 'x-btn-icon',
-       icon : rootURL + '/Pman/templates/images/edit-clear.gif',
-       xns : Roo.Toolbar,
-       listeners : {
-        click : function (_self, e)
-         {
-         _this.searchBox.setValue('');
-             _this.grid.footer.onClick('first');
-         }
-       }
-      },
-      {
-       '|xns' : 'Roo.Toolbar',
-       xtype : 'Fill',
-       xns : Roo.Toolbar
-      },
-      {
-       '|xns' : 'Roo.Toolbar',
-       text : "Show Removed",
-       enableToggle : true,
-       xtype : 'Button',
-       xns : Roo.Toolbar,
-       listeners : {
-        toggle : function (_self, pressed)
-         {
-            _this.grid.footer.onClick('first');
-            this.setText(pressed ? "Show Active" : "Show Removed");
-            
-            
-         },
-        render : function (_self)
-         {
-           _this.activeButton = _self;
-         }
-       }
-      }
-     ]
-
+      id : 'id',
+      root : 'data',
+      totalProperty : 'total',
+      xns : Roo.data,
+      '|xns' : 'Roo.data'
+     }
     },
-    '|xns' : 'Roo.grid',
-    autoExpandColumn : 'name',
-    xtype : 'Grid',
-    ddGroup : 'groupDD',
-    enableDrag : true,
-    loadMask : true,
-    xns : Roo.grid,
     colModel : [
-      {
-       '|xns' : 'Roo.grid',
-       hidden : true,
-       xtype : 'ColumnModel',
-       sortable : true,
-       header : 'Project',
-       width : 75,
-       renderer : function(v,x,r) { 
-             return String.format('<span qtip="{0}">{1}</span>', 
-                           r.data.project_id_name,
-                           v);
-        },
-       xns : Roo.grid,
-       dataIndex : 'project_id_code'
-      },
-{
-       '|xns' : 'Roo.grid',
-       xtype : 'ColumnModel',
-       sortable : true,
-       header : 'Type',
-       width : 50,
-       renderer : function(v,x,r) {
-           if (r.data.office_id) {
-               return String.format('{0} - {1}', v, r.data.office_id_name); 
-           } 
-           return String.format('{0}', v); 
+     {
+      xtype : 'ColumnModel',
+      dataIndex : 'project_id_code',
+      header : _this._strings['9e727fdd3aec8274f46685441900280d'] /* Project */,
+      hidden : true,
+      renderer : function(v,x,r) { 
+            return String.format('<span qtip="{0}">{1}</span>', 
+                          r.data.project_id_name,
+                          v);
        },
-       xns : Roo.grid,
-       dataIndex : 'company_id_comptype'
-      },
-{
-       '|xns' : 'Roo.grid',
-       xtype : 'ColumnModel',
-       sortable : true,
-       header : 'Company',
-       width : 150,
-       renderer : function(v,x,r) {
-           if (r.data.office_id) {
-               return String.format('{0} - {1}', v, r.data.office_id_name); 
-           } 
-           return String.format('{0}', v); 
-       },
-       xns : Roo.grid,
-       dataIndex : 'company_id_name'
-      },
-{
-       '|xns' : 'Roo.grid',
-       xtype : 'ColumnModel',
-       sortable : true,
-       header : 'Name',
-       width : 200,
-       renderer : function(v,p,r) { 
-           if(r.data.active != 1){
-               return String.format('<div style="text-decoration:line-through">{0}</div>', v); 
-           }
-           return String.format('{0}', v); 
-       },
-       xns : Roo.grid,
-       dataIndex : 'name'
-      },
-{
-       '|xns' : 'Roo.grid',
-       xtype : 'ColumnModel',
-       width : 100,
-       header : 'Role',
-       renderer : function(v) { return String.format('{0}', v); },
-       xns : Roo.grid,
-       dataIndex : 'role'
-      },
-{
-       '|xns' : 'Roo.grid',
-       xtype : 'ColumnModel',
-       width : 100,
-       header : 'Phone',
-       renderer : function(v) { return String.format('{0}', v); },
-       xns : Roo.grid,
-       dataIndex : 'phone'
-      },
-{
-       '|xns' : 'Roo.grid',
-       xtype : 'ColumnModel',
-       width : 100,
-       header : 'Fax',
-       renderer : function(v) { return String.format('{0}', v); },
-       xns : Roo.grid,
-       dataIndex : 'fax'
-      },
-{
-       '|xns' : 'Roo.grid',
-       xtype : 'ColumnModel',
-       sortable : true,
-       header : 'Email',
-       width : 200,
-       renderer : function(v) {
-          return (v.length && v.indexOf('@') > 0 ) ? 
-                           String.format('<a href="mailto:{0}">{0}</a>',v) : v;
-        },
-       xns : Roo.grid,
-       dataIndex : 'email'
+      sortable : true,
+      width : 75,
+      xns : Roo.grid,
+      '|xns' : 'Roo.grid'
+     },
+     {
+      xtype : 'ColumnModel',
+      dataIndex : 'company_id_comptype',
+      header : _this._strings['a1fa27779242b4902f7ae3bdd5c6d508'] /* Type */,
+      renderer : function(v,x,r) {
+          if (r.data.office_id) {
+              return String.format('{0} - {1}', v, r.data.office_id_name); 
+          } 
+          return String.format('{0}', v); 
       },
-{
-       '|xns' : 'Roo.grid',
-       xtype : 'ColumnModel',
-       width : 75,
-       header : 'Active',
-       renderer : function(v) {  
-           var state = v> 0 ?  '-checked' : '';
-       
-           return '<img class="x-grid-check-icon' + state + '" src="' + Roo.BLANK_IMAGE_URL + '"/>';
-                       
-        },
-       xns : Roo.grid,
-       dataIndex : 'active'
-      }
-    ],
-    listeners : {
-     rowdblclick : function (_self, rowIndex, e)
-      {
-          if (!_this.dialog) return;
-          _this.dialog.show( this.getDataSource().getAt(rowIndex), function() {
-              _this.grid.footer.onClick('first');
-          }); 
+      sortable : true,
+      width : 50,
+      xns : Roo.grid,
+      '|xns' : 'Roo.grid'
+     },
+     {
+      xtype : 'ColumnModel',
+      dataIndex : 'company_id_name',
+      header : _this._strings['1c76cbfe21c6f44c1d1e59d54f3e4420'] /* Company */,
+      renderer : function(v,x,r) {
+          if (r.data.office_id) {
+              return String.format('{0} - {1}', v, r.data.office_id_name); 
+          } 
+          return String.format('{0}', v); 
       },
-     render : function() 
-      {
-          _this.grid = this; 
-          if (!_this.dialog) {
-              _this.dialog = Pman.Dialog.PersonEdit;
-              
-          }
-          //_this.dialog = Pman.Dialog.FILL_IN
-          if (_this.panel.active) {
-             this.footer.onClick('first');
+      sortable : true,
+      width : 150,
+      xns : Roo.grid,
+      '|xns' : 'Roo.grid'
+     },
+     {
+      xtype : 'ColumnModel',
+      dataIndex : 'name',
+      header : _this._strings['49ee3087348e8d44e1feda1917443987'] /* Name */,
+      renderer : function(v,p,r) { 
+          if(r.data.active != 1){
+              return String.format('<div style="text-decoration:line-through">{0}</div>', v); 
           }
+          return String.format('{0}', v); 
       },
-     cellclick : function (_self, rowIndex, columnIndex, e)
-      {
+      sortable : true,
+      width : 200,
+      xns : Roo.grid,
+      '|xns' : 'Roo.grid'
+     },
+     {
+      xtype : 'ColumnModel',
+      dataIndex : 'role',
+      header : _this._strings['bbbabdbe1b262f75d99d62880b953be1'] /* Role */,
+      renderer : function(v) { return String.format('{0}', v); },
+      width : 100,
+      xns : Roo.grid,
+      '|xns' : 'Roo.grid'
+     },
+     {
+      xtype : 'ColumnModel',
+      dataIndex : 'phone',
+      header : _this._strings['bcc254b55c4a1babdf1dcb82c207506b'] /* Phone */,
+      renderer : function(v) { return String.format('{0}', v); },
+      width : 100,
+      xns : Roo.grid,
+      '|xns' : 'Roo.grid'
+     },
+     {
+      xtype : 'ColumnModel',
+      dataIndex : 'fax',
+      header : _this._strings['9810aa2b9f44401be4bf73188ef2b67d'] /* Fax */,
+      renderer : function(v) { return String.format('{0}', v); },
+      width : 100,
+      xns : Roo.grid,
+      '|xns' : 'Roo.grid'
+     },
+     {
+      xtype : 'ColumnModel',
+      dataIndex : 'email',
+      header : _this._strings['ce8ae9da5b7cd6c3df2929543a9af92d'] /* Email */,
+      renderer : function(v) {
+         return (v.length && v.indexOf('@') > 0 ) ? 
+                          String.format('<a href="mailto:{0}">{0}</a>',v) : v;
+       },
+      sortable : true,
+      width : 200,
+      xns : Roo.grid,
+      '|xns' : 'Roo.grid'
+     },
+     {
+      xtype : 'ColumnModel',
+      dataIndex : 'active',
+      header : _this._strings['4d3d769b812b6faa6b76e1a8abaece2d'] /* Active */,
+      renderer : function(v) {  
+          var state = v> 0 ?  '-checked' : '';
       
-              var di = this.colModel.getDataIndex(columnIndex);
-              if (di != 'active') {
-                  return;
-              }
-               
-              var rec = _this.grid.ds.getAt(rowIndex);
-              
-              rec.set('active', rec.data.active ? 0 : 1);
-              rec.commit();
-              Roo.select('.x-grid-row-selected').item(1).addClass('fadeout');
-              (function(){
-                  _this.grid.footer.onClick('first');
-              }).defer(5000)();
-              
-      }
-    },
-    items : [
-
-    ]
-
-   },
-   '|xns' : 'Roo',
-   autoScroll : true,
-   fitToframe : true,
-   background : true,
-   region : 'center',
-   title : "Person",
-   xtype : 'GridPanel',
-   fitContainer : true,
-   xns : Roo,
-   tableName : 'Person',
-   listeners : {
-    activate : function() {
-         _this.panel = this;
-         if (_this.grid) {
-             _this.grid.footer.onClick('first');
-         }
+          return '<img class="x-grid-check-icon' + state + '" src="' + Roo.BLANK_IMAGE_URL + '"/>';
+                      
+       },
+      width : 75,
+      xns : Roo.grid,
+      '|xns' : 'Roo.grid'
      }
-   },
-   items : [
-
-   ]
-
+    ]
+   }
   };  }
 });