Pman.Tab.AdminProjectMembers.js
[Pman.Admin] / Pman.Tab.AdminProjectMembers.js
index 552ea1c..1584d55 100644 (file)
@@ -50,8 +50,6 @@ Pman.Tab.AdminProjectMembers = new Roo.util.Observable({
             grid : {
                 xtype: 'Grid',
                 xns: Roo.grid,
-                autoExpandColumn : 'name',
-                loadMask : true,
                 listeners : {
                     render : function() 
                     {
@@ -69,9 +67,41 @@ Pman.Tab.AdminProjectMembers = new Roo.util.Observable({
                         }); 
                     }
                 },
+                filter : 'S',
+                autoExpandColumn : 'name',
+                loadMask : true,
                 dataSource : {
                     xtype: 'Store',
                     xns: Roo.data,
+                    listeners : {
+                        beforeload : function (_self, options)
+                        {
+                            if (!_this.memberBtn) {
+                                return false;
+                            }
+                            options.params.project_member_filter = _this.memberBtn.pressed;
+                            var pm = Pman.Tab.AdminProjectManager;
+                            if (!pm || !pm.grid || !pm.grid.getSelectionModel().getSelected()) {
+                                return false;
+                            }
+                            var sel = pm.grid.getSelectionModel().getSelected();
+                            switch(_this.grid.filter) {
+                                case 'S': // staff
+                                    options.params.company_id_comptype='OWNER';
+                                    options.params.project_member_of = sel.data.id;
+                                    break;
+                                case 'O': // owner..
+                                    options.params.company_id = sel.data.owner_id;
+                                    options.params.project_member_of = sel.data.id;
+                                    break;
+                                case 'A': // not owner or staff..
+                                    options.params['!company_id'] = sel.data.owner_id;
+                                    options.params['!company_id_comptype'] ='OWNER';
+                                    options.params.project_member_of = sel.data.id;        
+                            }
+                            
+                        }
+                    },
                     remoteSort : true,
                     sortInfo : { field : 'name', direction: 'ASC' },
                     proxy : {