From c216ab325bc56123819fb5b700a759753959ead8 Mon Sep 17 00:00:00 2001 From: Jean-Philippe Lang Date: Thu, 4 Oct 2007 17:04:50 +0000 Subject: Added position on Enumeration model. git-svn-id: http://redmine.rubyforge.org/svn/trunk@800 e93f8b46-1217-0410-a6f0-8f06a7374b81 --- app/models/enumeration.rb | 28 +++++++++++++++++----------- 1 file changed, 17 insertions(+), 11 deletions(-) (limited to 'app/models/enumeration.rb') diff --git a/app/models/enumeration.rb b/app/models/enumeration.rb index 46d350a21..b0ad48bc7 100644 --- a/app/models/enumeration.rb +++ b/app/models/enumeration.rb @@ -16,27 +16,33 @@ # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. class Enumeration < ActiveRecord::Base + acts_as_list :scope => 'opt = \'#{opt}\'' + before_destroy :check_integrity validates_presence_of :opt, :name validates_uniqueness_of :name, :scope => [:opt] validates_length_of :name, :maximum => 30 validates_format_of :name, :with => /^[\w\s\'\-]*$/i - - OPTIONS = { - "IPRI" => :enumeration_issue_priorities, - "DCAT" => :enumeration_doc_categories, - "ACTI" => :enumeration_activities - }.freeze - - def self.get_values(option) - find(:all, :conditions => ['opt=?', option]) - end - + + OPTIONS = { + "IPRI" => :enumeration_issue_priorities, + "DCAT" => :enumeration_doc_categories, + "ACTI" => :enumeration_activities + }.freeze + + def self.get_values(option) + find(:all, :conditions => {:opt => option}, :order => 'position') + end + def option_name OPTIONS[self.opt] end + #def <=>(enumeration) + # position <=> enumeration.position + #end + def to_s; name end private -- cgit v1.2.3