git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@8827 e93f8b46-1217-0410-a6f0-8f06a7374b81tags/1.4.0
@@ -8,7 +8,7 @@ class ContextMenusController < ApplicationController | |||
@issue = @issues.first | |||
end | |||
@allowed_statuses = @issues.map(&:new_statuses_allowed_to).inject{|memo,a| memo & a} | |||
@allowed_statuses = @issues.map(&:new_statuses_allowed_to).reduce(:&) | |||
@projects = @issues.collect(&:project).compact.uniq | |||
@project = @projects.first if @projects.size == 1 | |||
@@ -28,8 +28,8 @@ class ContextMenusController < ApplicationController | |||
@trackers = @project.trackers | |||
else | |||
#when multiple projects, we only keep the intersection of each set | |||
@assignables = @projects.map(&:assignable_users).inject{|memo,a| memo & a} | |||
@trackers = @projects.map(&:trackers).inject{|memo,t| memo & t} | |||
@assignables = @projects.map(&:assignable_users).reduce(:&) | |||
@trackers = @projects.map(&:trackers).reduce(:&) | |||
end | |||
@priorities = IssuePriority.active.reverse | |||
@@ -37,7 +37,7 @@ class ContextMenusController < ApplicationController | |||
@options_by_custom_field = {} | |||
if @can[:edit] | |||
custom_fields = @issues.map(&:available_custom_fields).inject {|memo, f| memo & f}.select do |f| | |||
custom_fields = @issues.map(&:available_custom_fields).reduce(:&).select do |f| | |||
%w(bool list user version).include?(f.field_format) && !f.multiple? | |||
end | |||
custom_fields.each do |field| |
@@ -229,12 +229,12 @@ class IssuesController < ApplicationController | |||
end | |||
target_projects ||= @projects | |||
@available_statuses = target_projects.map{|p|Workflow.available_statuses(p)}.inject{|memo,w|memo & w} | |||
@custom_fields = target_projects.map{|p|p.all_issue_custom_fields}.inject{|memo,c|memo & c} | |||
@assignables = target_projects.map(&:assignable_users).inject{|memo,a| memo & a} | |||
@trackers = target_projects.map(&:trackers).inject{|memo,t| memo & t} | |||
@available_statuses = target_projects.map{|p|Workflow.available_statuses(p)}.reduce(:&) | |||
@custom_fields = target_projects.map{|p|p.all_issue_custom_fields}.reduce(:&) | |||
@assignables = target_projects.map(&:assignable_users).reduce(:&) | |||
@trackers = target_projects.map(&:trackers).reduce(:&) | |||
@safe_attributes = @issues.map(&:safe_attribute_names).inject {|memo,attrs| memo & attrs} | |||
@safe_attributes = @issues.map(&:safe_attribute_names).reduce(:&) | |||
render :layout => false if request.xhr? | |||
end | |||
@@ -73,7 +73,7 @@ class CustomField < ActiveRecord::Base | |||
obj.project.shared_versions.sort.collect {|u| [u.to_s, u.id.to_s]} | |||
end | |||
elsif obj.is_a?(Array) | |||
obj.collect {|o| possible_values_options(o)}.inject {|memo, v| memo & v} | |||
obj.collect {|o| possible_values_options(o)}.reduce(:&) | |||
else | |||
[] | |||
end |