Mercurial > hg > soundsoftware-site
comparison app/models/group.rb @ 1517:dffacf8a6908 redmine-2.5
Update to Redmine SVN revision 13367 on 2.5-stable branch
author | Chris Cannam |
---|---|
date | Tue, 09 Sep 2014 09:29:00 +0100 |
parents | e248c7af89ec |
children |
comparison
equal
deleted
inserted
replaced
1516:b450a9d58aed | 1517:dffacf8a6908 |
---|---|
16 # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. | 16 # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. |
17 | 17 |
18 class Group < Principal | 18 class Group < Principal |
19 include Redmine::SafeAttributes | 19 include Redmine::SafeAttributes |
20 | 20 |
21 has_and_belongs_to_many :users, :after_add => :user_added, | 21 has_and_belongs_to_many :users, |
22 :after_remove => :user_removed | 22 :join_table => "#{table_name_prefix}groups_users#{table_name_suffix}", |
23 :after_add => :user_added, | |
24 :after_remove => :user_removed | |
23 | 25 |
24 acts_as_customizable | 26 acts_as_customizable |
25 | 27 |
26 validates_presence_of :lastname | 28 validates_presence_of :lastname |
27 validates_uniqueness_of :lastname, :case_sensitive => false | 29 validates_uniqueness_of :lastname, :case_sensitive => false |
64 def user_removed(user) | 66 def user_removed(user) |
65 members.each do |member| | 67 members.each do |member| |
66 MemberRole. | 68 MemberRole. |
67 includes(:member). | 69 includes(:member). |
68 where("#{Member.table_name}.user_id = ? AND #{MemberRole.table_name}.inherited_from IN (?)", user.id, member.member_role_ids). | 70 where("#{Member.table_name}.user_id = ? AND #{MemberRole.table_name}.inherited_from IN (?)", user.id, member.member_role_ids). |
69 all. | |
70 each(&:destroy) | 71 each(&:destroy) |
71 end | 72 end |
72 end | 73 end |
73 | 74 |
74 def self.human_attribute_name(attribute_key_name, *args) | 75 def self.human_attribute_name(attribute_key_name, *args) |
83 | 84 |
84 # Removes references that are not handled by associations | 85 # Removes references that are not handled by associations |
85 def remove_references_before_destroy | 86 def remove_references_before_destroy |
86 return if self.id.nil? | 87 return if self.id.nil? |
87 | 88 |
88 Issue.update_all 'assigned_to_id = NULL', ['assigned_to_id = ?', id] | 89 Issue.where(['assigned_to_id = ?', id]).update_all('assigned_to_id = NULL') |
89 end | 90 end |
90 end | 91 end |