]> source.dussan.org Git - redmine.git/commitdiff
Clean up custom field format definition.
authorJean-Philippe Lang <jp_lang@yahoo.fr>
Sat, 28 Apr 2012 16:19:32 +0000 (16:19 +0000)
committerJean-Philippe Lang <jp_lang@yahoo.fr>
Sat, 28 Apr 2012 16:19:32 +0000 (16:19 +0000)
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@9570 e93f8b46-1217-0410-a6f0-8f06a7374b81

lib/redmine.rb
lib/redmine/custom_field_format.rb

index 550cd70280aebf7c2191c2dc8f562e4c424a5ff1..9cd025c697a58af8551f6be8e7b082a19c2f3c3e 100644 (file)
@@ -34,15 +34,15 @@ Redmine::Scm::Base.add "Git"
 Redmine::Scm::Base.add "Filesystem"
 
 Redmine::CustomFieldFormat.map do |fields|
-  fields.register Redmine::CustomFieldFormat.new('string', :label => :label_string, :order => 1)
-  fields.register Redmine::CustomFieldFormat.new('text', :label => :label_text, :order => 2)
-  fields.register Redmine::CustomFieldFormat.new('int', :label => :label_integer, :order => 3)
-  fields.register Redmine::CustomFieldFormat.new('float', :label => :label_float, :order => 4)
-  fields.register Redmine::CustomFieldFormat.new('list', :label => :label_list, :order => 5)
-  fields.register Redmine::CustomFieldFormat.new('date', :label => :label_date, :order => 6)
-  fields.register Redmine::CustomFieldFormat.new('bool', :label => :label_boolean, :order => 7)
-  fields.register Redmine::CustomFieldFormat.new('user', :label => :label_user, :only => %w(Issue TimeEntry Version Project), :edit_as => 'list', :order => 8)
-  fields.register Redmine::CustomFieldFormat.new('version', :label => :label_version, :only => %w(Issue TimeEntry Version Project), :edit_as => 'list', :order => 9)
+  fields.register 'string'
+  fields.register 'text'
+  fields.register 'int', :label => :label_integer
+  fields.register 'float'
+  fields.register 'list'
+  fields.register 'date'
+  fields.register 'bool', :label => :label_boolean
+  fields.register 'user', :only => %w(Issue TimeEntry Version Project), :edit_as => 'list'
+  fields.register 'version', :only => %w(Issue TimeEntry Version Project), :edit_as => 'list'
 end
 
 # Permissions
index c0f4dcbc602376afe1fe4111354d74afdf2b5c18..cd5c58f12a42d6a4c77a02178e2df0762cb83774 100644 (file)
@@ -26,8 +26,8 @@ module Redmine
 
     def initialize(name, options={})
       self.name = name
-      self.label = options[:label]
-      self.order = options[:order]
+      self.label = options[:label] || "label_#{name}".to_sym
+      self.order = options[:order] || self.class.available_formats.size
       self.edit_as = options[:edit_as] || name
       self.class_names = options[:only]
     end
@@ -62,7 +62,11 @@ module Redmine
       end
 
       # Registers a custom field format
-      def register(custom_field_format, options={})
+      def register(*args)
+        custom_field_format = args.first
+        unless custom_field_format.is_a?(Redmine::CustomFieldFormat)
+          custom_field_format = Redmine::CustomFieldFormat.new(*args)
+        end
         @@available[custom_field_format.name] = custom_field_format unless @@available.keys.include?(custom_field_format.name)
       end