From f1a123add60257a3e6506761dd20885592956312 Mon Sep 17 00:00:00 2001 From: Jean-Philippe Lang Date: Fri, 23 Jan 2009 18:33:19 +0000 Subject: [PATCH] Slight change to the project combo for adding membership on user administration screen. All projects are listed, and the ones that the user belongs to are disabled. git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/branches/work@2301 e93f8b46-1217-0410-a6f0-8f06a7374b81 --- nested_projects/app/controllers/users_controller.rb | 2 +- nested_projects/app/helpers/users_helper.rb | 6 ++++-- nested_projects/app/views/users/_memberships.rhtml | 2 +- 3 files changed, 6 insertions(+), 4 deletions(-) diff --git a/nested_projects/app/controllers/users_controller.rb b/nested_projects/app/controllers/users_controller.rb index e2ab510fb..a37af0510 100644 --- a/nested_projects/app/controllers/users_controller.rb +++ b/nested_projects/app/controllers/users_controller.rb @@ -83,7 +83,7 @@ class UsersController < ApplicationController end @auth_sources = AuthSource.find(:all) @roles = Role.find_all_givable - @projects = Project.find(:all, :order => 'name', :conditions => "status=#{Project::STATUS_ACTIVE}") - @user.projects + @projects = Project.active.find(:all, :order => 'lft') @membership ||= Member.new @memberships = @user.memberships end diff --git a/nested_projects/app/helpers/users_helper.rb b/nested_projects/app/helpers/users_helper.rb index 18a80ef20..b9e990d6e 100644 --- a/nested_projects/app/helpers/users_helper.rb +++ b/nested_projects/app/helpers/users_helper.rb @@ -25,9 +25,11 @@ module UsersHelper end # Options for the new membership projects combo-box - def projects_options_for_select(projects) + def options_for_membership_project_select(user, projects) options = content_tag('option', "--- #{l(:actionview_instancetag_blank_option)} ---") - options << project_tree_options_for_select(projects) + options << project_tree_options_for_select(projects) do |p| + {:disabled => (user.projects.include?(p))} + end options end diff --git a/nested_projects/app/views/users/_memberships.rhtml b/nested_projects/app/views/users/_memberships.rhtml index 94b49159e..d1657fb98 100644 --- a/nested_projects/app/views/users/_memberships.rhtml +++ b/nested_projects/app/views/users/_memberships.rhtml @@ -31,7 +31,7 @@


<% form_tag({ :action => 'edit_membership', :id => @user }) do %> -<%= select_tag 'membership[project_id]', projects_options_for_select(@projects) %> +<%= select_tag 'membership[project_id]', options_for_membership_project_select(@user, @projects) %> <%= l(:label_role) %>: <%= select_tag 'membership[role_id]', options_from_collection_for_select(@roles, "id", "name") %> <%= submit_tag l(:button_add) %>