Mercurial > hg > soundsoftware-site
diff app/models/setting.rb @ 1517:dffacf8a6908 redmine-2.5
Update to Redmine SVN revision 13367 on 2.5-stable branch
author | Chris Cannam |
---|---|
date | Tue, 09 Sep 2014 09:29:00 +0100 |
parents | e248c7af89ec |
children |
line wrap: on
line diff
--- a/app/models/setting.rb Tue Sep 09 09:28:31 2014 +0100 +++ b/app/models/setting.rb Tue Sep 09 09:29:00 2014 +0100 @@ -83,7 +83,9 @@ validates_uniqueness_of :name validates_inclusion_of :name, :in => @@available_settings.keys - validates_numericality_of :value, :only_integer => true, :if => Proc.new { |setting| @@available_settings[setting.name]['format'] == 'int' } + validates_numericality_of :value, :only_integer => true, :if => Proc.new { |setting| + (s = @@available_settings[setting.name]) && s['format'] == 'int' + } # Hash used to cache setting values @cached_settings = {} @@ -240,9 +242,10 @@ def self.find_or_default(name) name = name.to_s raise "There's no setting named #{name}" unless @@available_settings.has_key?(name) - setting = find_by_name(name) + setting = where(:name => name).first unless setting - setting = new(:name => name) + setting = new + setting.name = name setting.value = @@available_settings[name]['default'] end setting