summaryrefslogtreecommitdiffstats
path: root/app/models
diff options
context:
space:
mode:
authorJean-Philippe Lang <jp_lang@yahoo.fr>2011-12-10 19:18:06 +0000
committerJean-Philippe Lang <jp_lang@yahoo.fr>2011-12-10 19:18:06 +0000
commit805c65f55d8abed3a34a747d4739d0cca2f30a41 (patch)
tree7407bf97d54d604d4654267061e519dc065fbb41 /app/models
parenteb15c9eaad429410da447f17f6f7187f72f41632 (diff)
downloadredmine-805c65f55d8abed3a34a747d4739d0cca2f30a41.tar.gz
redmine-805c65f55d8abed3a34a747d4739d0cca2f30a41.zip
Extracted new_subclass_instance method to a module.
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@8183 e93f8b46-1217-0410-a6f0-8f06a7374b81
Diffstat (limited to 'app/models')
-rw-r--r--app/models/custom_field.rb18
1 files changed, 2 insertions, 16 deletions
diff --git a/app/models/custom_field.rb b/app/models/custom_field.rb
index 93e662785..7202076e8 100644
--- a/app/models/custom_field.rb
+++ b/app/models/custom_field.rb
@@ -16,6 +16,8 @@
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
class CustomField < ActiveRecord::Base
+ include Redmine::SubclassFactory
+
has_many :custom_values, :dependent => :delete_all
acts_as_list :scope => 'type = \'#{self.class}\''
serialize :possible_values
@@ -155,22 +157,6 @@ class CustomField < ActiveRecord::Base
find(:all, :conditions => ["is_for_all=?", true], :order => 'position')
end
- # Returns an instance of the given subclass name
- def self.new_subclass_instance(class_name, *args)
- klass = nil
- begin
- klass = class_name.to_s.classify.constantize
- rescue
- # invalid class name
- end
- unless subclasses.include? klass
- klass = nil
- end
- if klass
- klass.new(*args)
- end
- end
-
def type_name
nil
end