comparison app/controllers/.svn/text-base/context_menus_controller.rb.svn-base @ 22:40f7cfd4df19

* Update to SVN trunk rev 4173
author Chris Cannam <chris.cannam@soundsoftware.ac.uk>
date Fri, 24 Sep 2010 14:06:04 +0100
parents 1d32c0a0efbf
children 94944d00e43c
comparison
equal deleted inserted replaced
14:1d32c0a0efbf 22:40f7cfd4df19
4 def issues 4 def issues
5 @issues = Issue.find_all_by_id(params[:ids], :include => :project) 5 @issues = Issue.find_all_by_id(params[:ids], :include => :project)
6 if (@issues.size == 1) 6 if (@issues.size == 1)
7 @issue = @issues.first 7 @issue = @issues.first
8 @allowed_statuses = @issue.new_statuses_allowed_to(User.current) 8 @allowed_statuses = @issue.new_statuses_allowed_to(User.current)
9 else
10 @allowed_statuses = @issues.map do |i|
11 i.new_statuses_allowed_to(User.current)
12 end.inject do |memo,s|
13 memo & s
14 end
9 end 15 end
10 projects = @issues.collect(&:project).compact.uniq 16 @projects = @issues.collect(&:project).compact.uniq
11 @project = projects.first if projects.size == 1 17 @project = @projects.first if @projects.size == 1
12 18
13 @can = {:edit => (@project && User.current.allowed_to?(:edit_issues, @project)), 19 @can = {:edit => (@project && User.current.allowed_to?(:edit_issues, @project)),
14 :log_time => (@project && User.current.allowed_to?(:log_time, @project)), 20 :log_time => (@project && User.current.allowed_to?(:log_time, @project)),
15 :update => (@project && (User.current.allowed_to?(:edit_issues, @project) || (User.current.allowed_to?(:change_status, @project) && @allowed_statuses && !@allowed_statuses.empty?))), 21 :update => (@project && (User.current.allowed_to?(:edit_issues, @project) || (User.current.allowed_to?(:change_status, @project) && @allowed_statuses && !@allowed_statuses.empty?))),
16 :move => (@project && User.current.allowed_to?(:move_issues, @project)), 22 :move => (@project && User.current.allowed_to?(:move_issues, @project)),