Mercurial > hg > soundsoftware-site
comparison app/controllers/members_controller.rb @ 929:5f33065ddc4b redmine-1.3
Update to Redmine SVN rev 9414 on 1.3-stable branch
author | Chris Cannam |
---|---|
date | Wed, 27 Jun 2012 14:54:18 +0100 |
parents | cbb26bc654de |
children | ec1c49528f36 433d4f72a19b |
comparison
equal
deleted
inserted
replaced
909:cbb26bc654de | 929:5f33065ddc4b |
---|---|
26 members = [] | 26 members = [] |
27 if params[:member] && request.post? | 27 if params[:member] && request.post? |
28 attrs = params[:member].dup | 28 attrs = params[:member].dup |
29 if (user_ids = attrs.delete(:user_ids)) | 29 if (user_ids = attrs.delete(:user_ids)) |
30 user_ids.each do |user_id| | 30 user_ids.each do |user_id| |
31 members << Member.new(attrs.merge(:user_id => user_id)) | 31 members << Member.new(:role_ids => params[:member][:role_ids], :user_id => user_id) |
32 end | 32 end |
33 else | 33 else |
34 members << Member.new(attrs) | 34 members << Member.new(:role_ids => params[:member][:role_ids], :user_id => params[:member][:user_id]) |
35 end | 35 end |
36 @project.members << members | 36 @project.members << members |
37 end | 37 end |
38 respond_to do |format| | 38 respond_to do |format| |
39 if members.present? && members.all? {|m| m.valid? } | 39 if members.present? && members.all? {|m| m.valid? } |
62 end | 62 end |
63 end | 63 end |
64 end | 64 end |
65 | 65 |
66 def edit | 66 def edit |
67 if request.post? and @member.update_attributes(params[:member]) | 67 if params[:member] |
68 @member.role_ids = params[:member][:role_ids] | |
69 end | |
70 if request.post? and @member.save | |
68 respond_to do |format| | 71 respond_to do |format| |
69 format.html { redirect_to :controller => 'projects', :action => 'settings', :tab => 'members', :id => @project } | 72 format.html { redirect_to :controller => 'projects', :action => 'settings', :tab => 'members', :id => @project } |
70 format.js { | 73 format.js { |
71 render(:update) {|page| | 74 render(:update) {|page| |
72 page.replace_html "tab-content-members", :partial => 'projects/settings/members' | 75 page.replace_html "tab-content-members", :partial => 'projects/settings/members' |
91 } | 94 } |
92 end | 95 end |
93 end | 96 end |
94 | 97 |
95 def autocomplete_for_member | 98 def autocomplete_for_member |
96 @principals = Principal.active.like(params[:q]).find(:all, :limit => 100) - @project.principals | 99 @principals = Principal.active.not_member_of(@project).like(params[:q]).all(:limit => 100) |
97 render :layout => false | 100 render :layout => false |
98 end | 101 end |
99 | 102 |
100 end | 103 end |