Mercurial > hg > soundsoftware-site
comparison app/controllers/members_controller.rb @ 1270:b2f7f52a164d redmine-2.2-integration
Fix project members page: update editlist partial following changes to project member settings partial; update mailer class and templates; make editlist forms not be remote (we just reload page)
author | Chris Cannam <chris.cannam@soundsoftware.ac.uk> |
---|---|
date | Thu, 02 May 2013 16:24:09 +0100 |
parents | 59fd55892a7b |
children | 4f746d8966dd 51364c0cd58f |
comparison
equal
deleted
inserted
replaced
1269:5e4f04bd7a1e | 1270:b2f7f52a164d |
---|---|
59 user_ids.each do |user_id| | 59 user_ids.each do |user_id| |
60 @new_member = Member.new(:role_ids => params[:membership][:role_ids], :user_id => user_id) | 60 @new_member = Member.new(:role_ids => params[:membership][:role_ids], :user_id => user_id) |
61 members << @new_member | 61 members << @new_member |
62 | 62 |
63 # send notification to member | 63 # send notification to member |
64 Mailer.deliver_added_to_project(@new_member, @project) | 64 Mailer.member_added_to_project(@new_member, @project).deliver |
65 end | 65 end |
66 else | 66 else |
67 @new_member = Member.new(:role_ids => params[:membership][:role_ids], :user_id => params[:membership][:user_id]) | 67 @new_member = Member.new(:role_ids => params[:membership][:role_ids], :user_id => params[:membership][:user_id]) |
68 members << @new_member | 68 members << @new_member |
69 | 69 |
70 # send notification to member | 70 # send notification to member |
71 Mailer.deliver_added_to_project(@new_member, @project) | 71 Mailer.member_added_to_project(@new_member, @project).deliver |
72 end | 72 end |
73 | 73 |
74 @project.members << members | 74 @project.members << members |
75 | 75 |
76 end | 76 end |
77 | 77 |
78 respond_to do |format| | 78 respond_to do |format| |
79 format.html { redirect_to :controller => 'projects', :action => 'settings', :tab => 'members', :id => @project } | 79 format.html { redirect_to :action => 'index', :project_id => @project } |
80 format.js { @members = members } | 80 format.js { @members = members } |
81 format.api { | 81 format.api { |
82 @member = members.first | 82 @member = members.first |
83 if @member.valid? | 83 if @member.valid? |
84 render :action => 'show', :status => :created, :location => membership_url(@member) | 84 render :action => 'show', :status => :created, :location => membership_url(@member) |
93 if params[:membership] | 93 if params[:membership] |
94 @member.role_ids = params[:membership][:role_ids] | 94 @member.role_ids = params[:membership][:role_ids] |
95 end | 95 end |
96 saved = @member.save | 96 saved = @member.save |
97 respond_to do |format| | 97 respond_to do |format| |
98 format.html { redirect_to :controller => 'projects', :action => 'settings', :tab => 'members', :id => @project } | 98 format.html { redirect_to :action => 'index', :project_id => @project } |
99 format.js | 99 format.js |
100 format.api { | 100 format.api { |
101 if saved | 101 if saved |
102 render_api_ok | 102 render_api_ok |
103 else | 103 else |
110 def destroy | 110 def destroy |
111 if request.delete? && @member.deletable? | 111 if request.delete? && @member.deletable? |
112 @member.destroy | 112 @member.destroy |
113 end | 113 end |
114 respond_to do |format| | 114 respond_to do |format| |
115 format.html { redirect_to :controller => 'projects', :action => 'settings', :tab => 'members', :id => @project } | 115 format.html { redirect_to :action => 'index', :project_id => @project } |
116 format.js | 116 format.js |
117 format.api { | 117 format.api { |
118 if @member.destroyed? | 118 if @member.destroyed? |
119 render_api_ok | 119 render_api_ok |
120 else | 120 else |