discourse/lib/site_settings/hidden_provider.rb
Régis Hanol 9d70336bab
DEV: support un-hiding site settings programmatically (#32824)
This might be useful to revert changes made by plugins when they're
disabled for example.
2025-05-20 21:44:56 +02:00

23 lines
479 B
Ruby

# frozen_string_literal: true
module SiteSettings
end
# A class to store and modify hidden site settings
class SiteSettings::HiddenProvider
def initialize
@hidden_settings = Set.new
end
def add_hidden(site_setting_name)
@hidden_settings << site_setting_name
end
def remove_hidden(site_setting_name)
@hidden_settings.delete(site_setting_name)
end
def all
DiscoursePluginRegistry.apply_modifier(:hidden_site_settings, @hidden_settings)
end
end