From fc180ccd71f755dea19f4863a0b6bcbe6a2cc98a Mon Sep 17 00:00:00 2001 From: Neil Lalonde Date: Fri, 15 Nov 2013 14:32:33 -0500 Subject: [PATCH] Site settings: move category into the opts hash so that it's compatibale with existing plugins --- app/models/site_setting.rb | 4 ++-- lib/site_setting_extension.rb | 8 ++++---- spec/components/site_setting_extension_spec.rb | 2 +- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/app/models/site_setting.rb b/app/models/site_setting.rb index 822f782a78..cb4972f998 100644 --- a/app/models/site_setting.rb +++ b/app/models/site_setting.rb @@ -9,9 +9,9 @@ class SiteSetting < ActiveRecord::Base SiteSettings::YamlLoader.new("#{Rails.root}/config/site_settings.yml").load do |category, name, default, opts| if opts.delete(:client) - client_setting(name, default, category) + client_setting(name, default, opts.merge(category: category)) else - setting(name, default, category, opts) + setting(name, default, opts.merge(category: category)) end end diff --git a/lib/site_setting_extension.rb b/lib/site_setting_extension.rb index 9236381709..3417275049 100644 --- a/lib/site_setting_extension.rb +++ b/lib/site_setting_extension.rb @@ -42,11 +42,11 @@ module SiteSettingExtension @hidden_settings ||= [] end - def setting(name_arg, default = nil, category = nil, opts = {}) + def setting(name_arg, default = nil, opts = {}) name = name_arg.to_sym mutex.synchronize do self.defaults[name] = default - categories[name] = category.try(:to_sym) || :uncategorized + categories[name] = opts[:category] || :uncategorized current_value = current.has_key?(name) ? current[name] : default if opts[:enum] enum = opts[:enum] @@ -60,8 +60,8 @@ module SiteSettingExtension end # just like a setting, except that it is available in javascript via DiscourseSession - def client_setting(name, default = nil, category = nil) - setting(name, default, category) + def client_setting(name, default = nil, opts = {}) + setting(name, default, opts) @@client_settings ||= [] @@client_settings << name end diff --git a/spec/components/site_setting_extension_spec.rb b/spec/components/site_setting_extension_spec.rb index 43cad61cfe..68c260bcb3 100644 --- a/spec/components/site_setting_extension_spec.rb +++ b/spec/components/site_setting_extension_spec.rb @@ -164,7 +164,7 @@ describe SiteSettingExtension do describe 'a setting with a category' do before do - settings.setting(:test_setting, 88, :tests) + settings.setting(:test_setting, 88, {category: :tests}) settings.refresh! end