Use Array#intersect? introduced in Ruby 3.1 (#38585).

git-svn-id: https://svn.redmine.org/redmine/trunk@22972 e93f8b46-1217-0410-a6f0-8f06a7374b81
This commit is contained in:
Go MAEDA
2024-08-20 23:40:58 +00:00
parent 86d262d5c5
commit c069ea3a24
11 changed files with 11 additions and 11 deletions

View File

@@ -29,7 +29,7 @@ class IssueCustomField < CustomField
end end
def visible_by?(project, user=User.current) def visible_by?(project, user=User.current)
super || (roles & user.roles_for_project(project)).present? super || roles.intersect?(user.roles_for_project(project))
end end
def visibility_by_project_condition(project_key=nil, user=User.current, id_column=nil) def visibility_by_project_condition(project_key=nil, user=User.current, id_column=nil)

View File

@@ -398,7 +398,7 @@ class MailHandler < ActionMailer::Base
if options.key?(:override) if options.key?(:override)
options[:override] options[:override]
else else
(handler_options[:allow_override] & [attr.to_s.downcase.gsub(/\s+/, '_'), 'all']).present? handler_options[:allow_override].intersect?([attr.to_s.downcase.gsub(/\s+/, '_'), 'all'])
end end
if override && (v = extract_keyword!(cleaned_up_text_body, attr, options[:format])) if override && (v = extract_keyword!(cleaned_up_text_body, attr, options[:format]))
v v

View File

@@ -23,7 +23,7 @@ class ProjectCustomField < CustomField
end end
def visible_by?(project, user=User.current) def visible_by?(project, user=User.current)
super || (roles & user.roles_for_project(project)).present? super || roles.intersect?(user.roles_for_project(project))
end end
def visibility_by_project_condition(project_key=nil, user=User.current, id_column=nil) def visibility_by_project_condition(project_key=nil, user=User.current, id_column=nil)

View File

@@ -417,7 +417,7 @@ class Query < ApplicationRecord
true true
when VISIBILITY_ROLES when VISIBILITY_ROLES
if project if project
(user.roles_for_project(project) & roles).any? user.roles_for_project(project).intersect?(roles)
else else
user.memberships.joins(:member_roles).where(:member_roles => {:role_id => roles.map(&:id)}).any? user.memberships.joins(:member_roles).where(:member_roles => {:role_id => roles.map(&:id)}).any?
end end

View File

@@ -23,7 +23,7 @@ class TimeEntryCustomField < CustomField
end end
def visible_by?(project, user=User.current) def visible_by?(project, user=User.current)
super || (roles & user.roles_for_project(project)).present? super || roles.intersect?(user.roles_for_project(project))
end end
def validate_custom_field def validate_custom_field

View File

@@ -23,6 +23,6 @@ class VersionCustomField < CustomField
end end
def visible_by?(project, user=User.current) def visible_by?(project, user=User.current)
super || (roles & user.roles_for_project(project)).present? super || roles.intersect?(user.roles_for_project(project))
end end
end end

View File

@@ -96,7 +96,7 @@ end
module ActionView module ActionView
LookupContext.prepend(Module.new do LookupContext.prepend(Module.new do
def formats=(values) def formats=(values)
if (Array(values) & [:xml, :json]).any? if Array(values).intersect?([:xml, :json])
values << :api values << :api
end end
super super

View File

@@ -100,7 +100,7 @@ module Redmine
end end
def position_scope_changed? def position_scope_changed?
(saved_changes.keys & self.class.positioned_options[:scope].map(&:to_s)).any? saved_changes.keys.intersect?(self.class.positioned_options[:scope].map(&:to_s))
end end
def shift_positions def shift_positions

View File

@@ -768,7 +768,7 @@ module Redmine
children = object.leaf? ? [] : object.children & project_issues(object.project) children = object.leaf? ? [] : object.children & project_issues(object.project)
has_children = has_children =
children.present? && children.present? &&
(children.collect(&:fixed_version).uniq & [object.fixed_version]).present? children.collect(&:fixed_version).uniq.intersect?([object.fixed_version])
when Version when Version
tag_options[:id] = "version-#{object.id}" tag_options[:id] = "version-#{object.id}"
tag_options[:class] = "version-name" tag_options[:class] = "version-name"

View File

@@ -103,7 +103,7 @@ module Redmine
# Returns true if the text formatter supports single section edit # Returns true if the text formatter supports single section edit
def supports_section_edit? def supports_section_edit?
(formatter.instance_methods & ['update_section', :update_section]).any? formatter.instance_methods.intersect?(['update_section', :update_section])
end end
# Returns a cache key for the given text +format+, +text+, +object+ and +attribute+ or nil if no caching should be done # Returns a cache key for the given text +format+, +text+, +object+ and +attribute+ or nil if no caching should be done

View File

@@ -381,7 +381,7 @@ class IssuesCustomFieldsVisibilityTest < Redmine::ControllerTest
assert_response :found assert_response :found
users_to_test.each do |user, fields| users_to_test.each do |user, fields|
mails = ActionMailer::Base.deliveries.select {|m| m.to.include? user.mail} mails = ActionMailer::Base.deliveries.select {|m| m.to.include? user.mail}
if (fields & [@field2, @field3]).any? if fields.intersect?([@field2, @field3])
assert_equal 1, mails.size, "User #{user.id} was not notified" assert_equal 1, mails.size, "User #{user.id} was not notified"
else else
assert_equal 0, mails.size, "User #{user.id} was notified" assert_equal 0, mails.size, "User #{user.id} was notified"