@@ -54,7 +54,6 class Query < ActiveRecord::Base | |||
|
54 | 54 | serialize :column_names |
|
55 | 55 | |
|
56 | 56 | attr_protected :project, :user |
|
57 | attr_accessor :executed_by | |
|
58 | 57 | |
|
59 | 58 | validates_presence_of :name, :on => :save |
|
60 | 59 | validates_length_of :name, :maximum => 255 |
@@ -112,8 +111,7 class Query < ActiveRecord::Base | |||
|
112 | 111 | def initialize(attributes = nil) |
|
113 | 112 | super attributes |
|
114 | 113 | self.filters ||= { 'status_id' => {:operator => "o", :values => [""]} } |
|
115 | @executed_by = User.current.logged? ? User.current : nil | |
|
116 | set_language_if_valid(executed_by.language) if executed_by | |
|
114 | set_language_if_valid(User.current.language) | |
|
117 | 115 | end |
|
118 | 116 | |
|
119 | 117 | def validate |
@@ -145,12 +143,12 class Query < ActiveRecord::Base | |||
|
145 | 143 | "done_ratio" => { :type => :integer, :order => 13 }} |
|
146 | 144 | |
|
147 | 145 | user_values = [] |
|
148 |
user_values << ["<< #{l(:label_me)} >>", "me"] if |
|
|
146 | user_values << ["<< #{l(:label_me)} >>", "me"] if User.current.logged? | |
|
149 | 147 | if project |
|
150 | 148 | user_values += project.users.sort.collect{|s| [s.name, s.id.to_s] } |
|
151 | elsif executed_by | |
|
149 | else | |
|
152 | 150 | # members of the user's projects |
|
153 |
user_values += |
|
|
151 | user_values += User.current.projects.collect(&:users).flatten.uniq.sort.collect{|s| [s.name, s.id.to_s] } | |
|
154 | 152 | end |
|
155 | 153 | @available_filters["assigned_to_id"] = { :type => :list_optional, :order => 4, :values => user_values } unless user_values.empty? |
|
156 | 154 | @available_filters["author_id"] = { :type => :list, :order => 5, :values => user_values } unless user_values.empty? |
@@ -267,7 +265,7 class Query < ActiveRecord::Base | |||
|
267 | 265 | elsif project |
|
268 | 266 | clause << "#{Issue.table_name}.project_id=%d" % project.id |
|
269 | 267 | else |
|
270 |
clause << Project.visible_by( |
|
|
268 | clause << Project.visible_by(User.current) | |
|
271 | 269 | end |
|
272 | 270 | |
|
273 | 271 | # filters clauses |
@@ -292,7 +290,7 class Query < ActiveRecord::Base | |||
|
292 | 290 | |
|
293 | 291 | # "me" value subsitution |
|
294 | 292 | if %w(assigned_to_id author_id).include?(field) |
|
295 |
v.push( |
|
|
293 | v.push(User.current.logged? ? User.current.id.to_s : "0") if v.delete("me") | |
|
296 | 294 | end |
|
297 | 295 | |
|
298 | 296 | case operator_for field |
General Comments 0
You need to be logged in to leave comments.
Login now