diff app/controllers/members_controller.rb @ 511:107d36338b70 live

Merge from branch "cannam"
author Chris Cannam
date Thu, 14 Jul 2011 10:43:07 +0100
parents d7326bb4f6f0
children 5e80956cc792
line wrap: on
line diff
--- a/app/controllers/members_controller.rb	Thu Jun 09 16:51:06 2011 +0100
+++ b/app/controllers/members_controller.rb	Thu Jul 14 10:43:07 2011 +0100
@@ -17,11 +17,22 @@
 
 class MembersController < ApplicationController
   model_object Member
-  before_filter :find_model_object, :except => [:new, :autocomplete_for_member]
-  before_filter :find_project_from_association, :except => [:new, :autocomplete_for_member]
+  menu_item :members
+  before_filter :find_model_object, :except => [:index, :new, :autocomplete_for_member]
+  before_filter :find_project_from_association, :except => [:new, :index, :autocomplete_for_member]
   before_filter :find_project, :only => [:new, :autocomplete_for_member]
+  before_filter :find_project_by_project_id, :only => [:index] 
   before_filter :authorize
 
+  def index
+    logger.debug('in index')
+    respond_to do |format|
+      format.html {
+        render :layout => false if request.xhr?
+      }
+    end
+  end
+
   def new
     members = []
     if params[:member] && request.post?
@@ -50,11 +61,11 @@
     respond_to do |format|
       if members.present? && members.all? {|m| m.valid? }
 
-        format.html { redirect_to :controller => 'projects', :action => 'settings', :tab => 'members', :id => @project }
+        format.html { redirect_to :action => 'index', :project_id => @project }
 
         format.js { 
           render(:update) {|page| 
-            page.replace_html "tab-content-members", :partial => 'projects/settings/members'
+            page.replace_html "memberlist", :partial => 'editlist'
             page << 'hideOnLoad()'
             members.each {|member| page.visual_effect(:highlight, "member-#{member.id}") }
           }
@@ -78,10 +89,10 @@
   def edit
     if request.post? and @member.update_attributes(params[:member])
   	 respond_to do |format|
-        format.html { redirect_to :controller => 'projects', :action => 'settings', :tab => 'members', :id => @project }
+        format.html { redirect_to :action => 'index', :project_id => @project }
         format.js { 
           render(:update) {|page| 
-            page.replace_html "tab-content-members", :partial => 'projects/settings/members'
+            page.replace_html "memberlist", :partial => 'editlist'
             page << 'hideOnLoad()'
             page.visual_effect(:highlight, "member-#{@member.id}")
           }
@@ -95,9 +106,9 @@
       @member.destroy
     end
     respond_to do |format|
-      format.html { redirect_to :controller => 'projects', :action => 'settings', :tab => 'members', :id => @project }
+      format.html { redirect_to :action => 'index', :project_id => @project }
       format.js { render(:update) {|page|
-          page.replace_html "tab-content-members", :partial => 'projects/settings/members'
+          page.replace_html "memberlist", :partial => 'editlist'
           page << 'hideOnLoad()'
         }
       }