Pman.Tab.AdminProjectMembers.bjs
[Pman.Admin] / Pman.Tab.AdminProjectMembers.bjs
index b3ed6d0..c940fa0 100644 (file)
@@ -1,38 +1,42 @@
 {
     "id": "roo-file-189",
     "name": "Pman.Tab.AdminProjectMembers",
-    "parent": "",
-    "title": "",
+    "parent": "Pman.Tab.AdminProjectManager",
+    "title": "Pman.Tab.AdminProjectMembers",
     "path": "/home/alan/gitlive/Pman.Admin/Pman.Tab.AdminProjectMembers.bjs",
     "items": [
         {
-            "|xns": "Roo",
-            "xtype": "GridPanel",
-            "title": "Person",
-            "fitToframe": true,
-            "fitContainer": true,
-            "tableName": "Person",
-            "background": true,
-            "region": "center",
             "listeners": {
                 "|activate": "function() {\n    _this.panel = this;\n    if (_this.grid) {\n        _this.grid.footer.onClick('first');\n    }\n}"
             },
+            "background": true,
+            "fitContainer": true,
+            "fitToframe": true,
+            "region": "east",
+            "tableName": "Person",
+            "title": "Person",
+            "xtype": "GridPanel",
+            "|xns": "Roo",
             "items": [
                 {
-                    "*prop": "grid",
-                    "xtype": "Grid",
-                    "autoExpandColumn": "name",
-                    "loadMask": true,
                     "listeners": {
                         "|render": "function() \n{\n    _this.grid = this; \n    //_this.dialog = Pman.Dialog.FILL_IN\n    if (_this.panel.active) {\n       this.footer.onClick('first');\n    }\n}",
                         "|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"
                     },
+                    "filter": "S",
+                    "*prop": "grid",
+                    "autoExpandColumn": "name",
+                    "loadMask": true,
+                    "xtype": "Grid",
                     "|xns": "Roo.grid",
                     "items": [
                         {
+                            "listeners": {
+                                "beforeload": "function (_self, options)\n{\n    if (!_this.memberBtn) {\n        return false;\n    }\n    options.params.project_member_filter = _this.memberBtn.pressed ? 1 :0;\n    var pm = Pman.Tab.AdminProjectManager;\n    if (!pm || !pm.grid || !pm.grid.getSelectionModel().getSelected()) {\n        return false;\n    }\n    var sel = pm.grid.getSelectionModel().getSelected();\n    switch(_this.grid.filter) {\n        case 'S': // staff\n            options.params.company_id_comptype='OWNER';\n            options.params.project_member_of = sel.data.id;\n            break;\n        case 'O': // owner..\n            options.params.company_id = sel.data.client_id;\n            options.params.project_member_of = sel.data.id;\n            break;\n        case 'A': // not owner or staff..\n            options.params['!company_id'] = sel.data.client_id;\n            options.params['!company_id_comptype'] ='OWNER';\n            options.params.project_member_of = sel.data.id;  \n            break;      \n    }\n    \n}"
+                            },
                             "*prop": "dataSource",
-                            "xtype": "Store",
                             "remoteSort": true,
+                            "xtype": "Store",
                             "|sortInfo": "{ field : 'name', direction: 'ASC' }",
                             "|xns": "Roo.data",
                             "items": [
                         },
                         {
                             "*prop": "footer",
-                            "xtype": "PagingToolbar",
-                            "pageSize": 25,
                             "displayInfo": true,
-                            "displayMsg": "Displaying Person{0} - {1} of {2}",
+                            "displayMsg": " ",
                             "emptyMsg": "No Person found",
+                            "pageSize": 25,
+                            "xtype": "PagingToolbar",
                             "|xns": "Roo"
                         },
                         {
@@ -73,6 +77,7 @@
                                         "toggle": "function (_self, pressed)\n{\n    if (pressed) {\n        _this.grid.filter = 'S';\n    }\n    _this.grid.footer.onClick('first');\n}"
                                     },
                                     "enableToggle": true,
+                                    "pressed": true,
                                     "text": "Staff",
                                     "toggleGroup": "appm",
                                     "xtype": "Button",
                                     "toggleGroup": "appm",
                                     "xtype": "Button",
                                     "|xns": "Roo.Toolbar"
+                                },
+                                {
+                                    "|xns": "Roo.Toolbar",
+                                    "xtype": "Fill"
+                                },
+                                {
+                                    "listeners": {
+                                        "toggle": "function (_self, pressed)\n{\n   \n    _this.grid.footer.onClick('first');\n}",
+                                        "render": "function (_self)\n{\n    _this.memberBtn = _self;\n}"
+                                    },
+                                    "enableToggle": true,
+                                    "text": "Members",
+                                    "xtype": "Button",
+                                    "|xns": "Roo.Toolbar"
                                 }
                             ]
                         },
-                        {
-                            "xtype": "ColumnModel",
-                            "header": "Name",
-                            "width": 200,
-                            "dataIndex": "name",
-                            "|renderer": "function(v) { return String.format('{0}', v); }",
-                            "|xns": "Roo.grid",
-                            "*prop": "colModel[]"
-                        },
-                        {
-                            "xtype": "ColumnModel",
-                            "header": "Email",
-                            "width": 200,
-                            "dataIndex": "email",
-                            "|renderer": "function(v) { return String.format('{0}', v); }",
-                            "|xns": "Roo.grid",
-                            "*prop": "colModel[]"
-                        },
                         {
                             "*prop": "colModel[]",
-                            "dataIndex": "company_id_name",
-                            "header": "Company",
-                            "width": 75,
+                            "dataIndex": "is_member",
+                            "header": "Member",
+                            "width": 60,
                             "xtype": "ColumnModel",
                             "|renderer": "function(v) { return String.format('{0}', v); }",
                             "|xns": "Roo.grid"
                         },
                         {
+                            "*prop": "colModel[]",
+                            "dataIndex": "name",
+                            "header": "Name",
+                            "sortable": true,
+                            "width": 200,
                             "xtype": "ColumnModel",
-                            "header": "No reset sent",
-                            "width": 75,
-                            "dataIndex": "no_reset_sent",
                             "|renderer": "function(v) { return String.format('{0}', v); }",
-                            "|xns": "Roo.grid",
-                            "*prop": "colModel[]"
+                            "|xns": "Roo.grid"
                         },
                         {
+                            "*prop": "colModel[]",
+                            "dataIndex": "email",
+                            "header": "Email",
+                            "width": 100,
                             "xtype": "ColumnModel",
-                            "header": "Action type",
-                            "width": 200,
-                            "dataIndex": "action_type",
                             "|renderer": "function(v) { return String.format('{0}', v); }",
                             "|xns": "Roo.grid",
-                            "*prop": "colModel[]"
+                            "sortable": true,
+                            "listeners": {}
                         },
                         {
+                            "*prop": "colModel[]",
+                            "dataIndex": "company_id_name",
+                            "header": "Company",
+                            "sortable": true,
+                            "width": 120,
                             "xtype": "ColumnModel",
-                            "header": "Project",
-                            "width": 75,
-                            "dataIndex": "project_id",
                             "|renderer": "function(v) { return String.format('{0}', v); }",
-                            "|xns": "Roo.grid",
-                            "*prop": "colModel[]"
+                            "|xns": "Roo.grid"
                         }
                     ]
                 }