Project

General

Profile

« Previous | Next » 

Revision d5953972

Added by Jan Pazdziora about 10 years ago

fixes #5241 - Add support for external user groups.

View differences:

app/models/usergroup.rb
has_many :usergroup_members, :dependent => :destroy
has_many :users, :through => :usergroup_members, :source => :member, :source_type => 'User', :dependent => :destroy
has_many :usergroups, :through => :usergroup_members, :source => :member, :source_type => 'Usergroup', :dependent => :destroy
has_many :external_usergroups, :dependent => :destroy, :inverse_of => :usergroup
has_many :cached_usergroup_members
has_many :usergroup_parents, :dependent => :destroy, :foreign_key => 'member_id',
......
scoped_search :on => :name, :complete_value => :true
validate :ensure_uniq_name
accepts_nested_attributes_for :external_usergroups, :reject_if => lambda { |a| a[:name].blank? }, :allow_destroy => true
# This methods retrieves all user addresses in a usergroup
# Returns: Array of strings representing the user's email addresses
def recipients
......
errors.add :name, _("is already used by a user account") if User.where(:login => name).first
end
def add_users(userlist)
users << User.where( {:login => userlist } )
end
def remove_users(userlist)
old_users = User.select { |user| userlist.include?(user.login) }
self.users = self.users - old_users
end
end

Also available in: Unified diff