1
0
mirror of https://github.com/meineerde/redmine.git synced 2025-12-23 08:51:13 +00:00

shorten long line of app/models/member.rb

git-svn-id: http://svn.redmine.org/redmine/trunk@20404 e93f8b46-1217-0410-a6f0-8f06a7374b81
This commit is contained in:
Toshi MARUYAMA 2020-11-17 12:40:40 +00:00
parent 5a32dc7ee1
commit d76c7e2122

View File

@ -30,8 +30,9 @@ class Member < ActiveRecord::Base
before_destroy :set_issue_category_nil, :remove_from_project_default_assigned_to before_destroy :set_issue_category_nil, :remove_from_project_default_assigned_to
scope :active, lambda { joins(:principal).where(:users => {:status => Principal::STATUS_ACTIVE})} scope :active, (lambda do
joins(:principal).where(:users => {:status => Principal::STATUS_ACTIVE})
end)
# Sort by first role and principal # Sort by first role and principal
scope :sorted, (lambda do scope :sorted, (lambda do
includes(:member_roles, :roles, :principal). includes(:member_roles, :roles, :principal).
@ -67,7 +68,9 @@ class Member < ActiveRecord::Base
new_role_ids = ids - role_ids new_role_ids = ids - role_ids
# Add new roles # Add new roles
new_role_ids.each {|id| member_roles << MemberRole.new(:role_id => id, :member => self) } new_role_ids.each do |id|
member_roles << MemberRole.new(:role_id => id, :member => self)
end
# Remove roles (Rails' #role_ids= will not trigger MemberRole#on_destroy) # Remove roles (Rails' #role_ids= will not trigger MemberRole#on_destroy)
member_roles_to_destroy = member_roles.select {|mr| !ids.include?(mr.role_id)} member_roles_to_destroy = member_roles.select {|mr| !ids.include?(mr.role_id)}
if member_roles_to_destroy.any? if member_roles_to_destroy.any?