##// END OF EJS Templates
Add plugins information to script/about (#3387)....
Add plugins information to script/about (#3387). git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@2766 e93f8b46-1217-0410-a6f0-8f06a7374b81

File last commit:

r2627:7dccf9fda6f3
r2667:53b002b4970c
Show More
members_controller.rb
89 lines | 3.2 KiB | text/x-ruby | RubyLexer
/ app / controllers / members_controller.rb
Jean-Philippe Lang
added svn:eol-style native property on /app files...
r330 # redMine - project management software
# Copyright (C) 2006 Jean-Philippe Lang
#
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License
# as published by the Free Software Foundation; either version 2
# of the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
Jean-Philippe Lang
Initial commit...
r2 class MembersController < ApplicationController
Jean-Philippe Lang
Adds a user search field with autocompleter on project members screen....
r2549 before_filter :find_member, :except => [:new, :autocomplete_for_member_login]
before_filter :find_project, :only => [:new, :autocomplete_for_member_login]
Jean-Philippe Lang
Added project module concept....
r714 before_filter :authorize
Jean-Philippe Lang
Initial commit...
r2
Jean-Philippe Lang
Added project module concept....
r714 def new
Jean-Philippe Lang
Ability to add multiple project members in a single action (#1556)....
r2546 members = []
if params[:member] && request.post?
attrs = params[:member].dup
if (user_ids = attrs.delete(:user_ids))
user_ids.each do |user_id|
members << Member.new(attrs.merge(:user_id => user_id))
end
else
members << Member.new(attrs)
end
@project.members << members
end
Jean-Philippe Lang
Added project module concept....
r714 respond_to do |format|
Jean-Philippe Lang
Adds some functional tests....
r2477 format.html { redirect_to :controller => 'projects', :action => 'settings', :tab => 'members', :id => @project }
Jean-Philippe Lang
Ability to add multiple project members in a single action (#1556)....
r2546 format.js {
render(:update) {|page|
page.replace_html "tab-content-members", :partial => 'projects/settings/members'
members.each {|member| page.visual_effect(:highlight, "member-#{member.id}") }
}
}
Jean-Philippe Lang
Added project module concept....
r714 end
end
Jean-Philippe Lang
* project settings split in 4 tabs...
r178 def edit
Jean-Philippe Lang
added svn:eol-style native property on /app files...
r330 if request.post? and @member.update_attributes(params[:member])
Jean-Philippe Lang
Members management in project settings is now AJAXified...
r505 respond_to do |format|
format.html { redirect_to :controller => 'projects', :action => 'settings', :tab => 'members', :id => @project }
Jean-Philippe Lang
Allows multiple roles on the same project (#706). Prerequisite for user groups feature....
r2627 format.js {
render(:update) {|page|
page.replace_html "tab-content-members", :partial => 'projects/settings/members'
page.visual_effect(:highlight, "member-#{@member.id}")
}
}
Jean-Philippe Lang
Members management in project settings is now AJAXified...
r505 end
Jean-Philippe Lang
* project settings split in 4 tabs...
r178 end
end
Jean-Philippe Lang
added svn:eol-style native property on /app files...
r330
Jean-Philippe Lang
* project settings split in 4 tabs...
r178 def destroy
Jean-Philippe Lang
added svn:eol-style native property on /app files...
r330 @member.destroy
Jean-Philippe Lang
Members management in project settings is now AJAXified...
r505 respond_to do |format|
format.html { redirect_to :controller => 'projects', :action => 'settings', :tab => 'members', :id => @project }
Jean-Philippe Lang
Added project module concept....
r714 format.js { render(:update) {|page| page.replace_html "tab-content-members", :partial => 'projects/settings/members'} }
Jean-Philippe Lang
Members management in project settings is now AJAXified...
r505 end
Jean-Philippe Lang
added svn:eol-style native property on /app files...
r330 end
Jean-Philippe Lang
Adds a user search field with autocompleter on project members screen....
r2549
def autocomplete_for_member_login
@users = User.active.find(:all, :conditions => ["LOWER(login) LIKE ? OR LOWER(firstname) LIKE ? OR LOWER(lastname) LIKE ?", "#{params[:user]}%", "#{params[:user]}%", "#{params[:user]}%"],
:limit => 10,
:order => 'login ASC') - @project.users
render :layout => false
end
Jean-Philippe Lang
added svn:eol-style native property on /app files...
r330
private
def find_project
Jean-Philippe Lang
Added project module concept....
r714 @project = Project.find(params[:id])
rescue ActiveRecord::RecordNotFound
render_404
end
def find_member
Jean-Philippe Lang
added svn:eol-style native property on /app files...
r330 @member = Member.find(params[:id])
@project = @member.project
rescue ActiveRecord::RecordNotFound
render_404
Jean-Philippe Lang
indentation corrections...
r198 end
Jean-Philippe Lang
Initial commit...
r2 end