Fix the build.

This commit is contained in:
Guo Xiang Tan 2018-11-14 17:32:32 +08:00
parent 52a756b98c
commit 2220345a8b
2 changed files with 21 additions and 15 deletions

View File

@ -19,7 +19,6 @@ class SiteSetting < ActiveRecord::Base
end
load_settings(File.join(Rails.root, 'config', 'site_settings.yml'))
setup_deprecated_methods
unless Rails.env.test? && ENV['LOAD_PLUGINS'] != "1"
Dir[File.join(Rails.root, "plugins", "*", "config", "settings.yml")].each do |file|
@ -27,6 +26,7 @@ class SiteSetting < ActiveRecord::Base
end
end
setup_deprecated_methods
client_settings << :available_locales
def self.available_locales

View File

@ -2,20 +2,22 @@ module SiteSettings; end
module SiteSettings::DeprecatedSettings
DEPRECATED_SETTINGS = [
%w{logo_url logo 2.4},
%w{logo_small_url logo_small 2.4},
%w{digest_logo_url digest_logo 2.4},
%w{mobile_logo_url mobile_logo 2.4},
%w{large_icon_url large_icon 2.4},
%w{favicon_url favicon 2.4},
%w{apple_touch_icon_url apple_touch_icon 2.4},
%w{default_opengraph_image_url opengraph_image 2.4},
%w{twitter_summary_large_image_url twitter_summary_large_image 2.4},
%w{push_notifications_icon_url push_notifications_icon 2.4}
['logo_url', 'logo', false, '2.4'],
['logo_small_url', 'logo_small', false, '2.4'],
['digest_logo_url', 'digest_logo', false, '2.4'],
['mobile_logo_url', 'mobile_logo', false, '2.4'],
['large_icon_url', 'large_icon', false, '2.4'],
['favicon_url', 'favicon', false, '2.4'],
['apple_touch_icon_url', 'apple_touch_icon', false, '2.4'],
['default_opengraph_image_url', 'opengraph_image', false, '2.4'],
['twitter_summary_large_image_url', 'twitter_summary_large_image', false, '2.4'],
['push_notifications_icon_url', 'push_notifications_icon', false, '2.4']
]
def setup_deprecated_methods
DEPRECATED_SETTINGS.each do |old_setting, new_setting, version|
DEPRECATED_SETTINGS.each do |old_setting, new_setting, override, version|
SiteSetting.singleton_class.public_send(:alias_method, :"_#{old_setting}", :"#{old_setting}")
define_singleton_method old_setting do |warn: true|
if warn
logger.warn(
@ -25,9 +27,11 @@ module SiteSettings::DeprecatedSettings
)
end
self.public_send new_setting
self.public_send(override ? new_setting : "_#{old_setting}")
end
SiteSetting.singleton_class.public_send(:alias_method, :"_#{old_setting}?", :"#{old_setting}?")
define_singleton_method "#{old_setting}?" do |warn: true|
if warn
logger.warn(
@ -37,9 +41,11 @@ module SiteSettings::DeprecatedSettings
)
end
self.public_send "#{new_setting}?"
self.public_send("#{override ? new_setting : "_" + old_setting}?")
end
SiteSetting.singleton_class.public_send(:alias_method, :"_#{old_setting}=", :"#{old_setting}=")
define_singleton_method "#{old_setting}=" do |val, warn: true|
if warn
logger.warn(
@ -49,7 +55,7 @@ module SiteSettings::DeprecatedSettings
)
end
self.public_send "#{new_setting}=", val
self.public_send("#{override ? new_setting : "_" + old_setting}=", val)
end
end
end