@@ -185,9 +185,11 class Query < ActiveRecord::Base | |||
|
185 | 185 | if project |
|
186 | 186 | user_values += project.users.sort.collect{|s| [s.name, s.id.to_s] } |
|
187 | 187 | else |
|
188 | # members of the user's projects | |
|
189 | # OPTIMIZE: Is selecting from users per project (N+1) | |
|
190 | user_values += User.current.projects.collect(&:users).flatten.uniq.sort.collect{|s| [s.name, s.id.to_s] } | |
|
188 | project_ids = User.current.projects.collect(&:id) | |
|
189 | if project_ids.any? | |
|
190 | # members of the user's projects | |
|
191 | user_values += User.active.find(:all, :conditions => ["#{User.table_name}.id IN (SELECT DISTINCT user_id FROM members WHERE project_id IN (?))", project_ids]).sort.collect{|s| [s.name, s.id.to_s] } | |
|
192 | end | |
|
191 | 193 | end |
|
192 | 194 | @available_filters["assigned_to_id"] = { :type => :list_optional, :order => 4, :values => user_values } unless user_values.empty? |
|
193 | 195 | @available_filters["author_id"] = { :type => :list, :order => 5, :values => user_values } unless user_values.empty? |
General Comments 0
You need to be logged in to leave comments.
Login now