Mercurial > hg > soundsoftware-site
diff app/models/group.rb @ 1115:433d4f72a19b redmine-2.2
Update to Redmine SVN revision 11137 on 2.2-stable branch
author | Chris Cannam |
---|---|
date | Mon, 07 Jan 2013 12:01:42 +0000 |
parents | cbb26bc654de |
children | 622f24f53b42 |
line wrap: on
line diff
--- a/app/models/group.rb Wed Jun 27 14:54:18 2012 +0100 +++ b/app/models/group.rb Mon Jan 07 12:01:42 2013 +0000 @@ -1,5 +1,5 @@ # Redmine - project management software -# Copyright (C) 2006-2011 Jean-Philippe Lang +# Copyright (C) 2006-2012 Jean-Philippe Lang # # This program is free software; you can redistribute it and/or # modify it under the terms of the GNU General Public License @@ -16,6 +16,8 @@ # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. class Group < Principal + include Redmine::SafeAttributes + has_and_belongs_to_many :users, :after_add => :user_added, :after_remove => :user_removed @@ -27,11 +29,25 @@ before_destroy :remove_references_before_destroy + scope :sorted, order("#{table_name}.lastname ASC") + + safe_attributes 'name', + 'user_ids', + 'custom_field_values', + 'custom_fields', + :if => lambda {|group, user| user.admin?} + def to_s lastname.to_s end - alias :name :to_s + def name + lastname + end + + def name=(arg) + self.lastname = arg + end def user_added(user) members.each do |member| @@ -51,12 +67,12 @@ end end - def self.human_attribute_name(attribute_key_name) - attr_name = attribute_key_name + def self.human_attribute_name(attribute_key_name, *args) + attr_name = attribute_key_name.to_s if attr_name == 'lastname' attr_name = "name" end - super(attr_name) + super(attr_name, *args) end private