mirror of
https://github.com/discourse/discourse.git
synced 2025-02-22 06:09:55 +08:00

There are three modifiers: - serialize_topic_excerpts (boolean) - csp_extensions (array of strings) - svg_icons (array of strings) When multiple themes are active, the values will be combined. The combination method varies based on the setting. CSP/SVG arrays will be combined. serialize_topic_excerpts will use `Enumerable#any`.
13 lines
331 B
Ruby
13 lines
331 B
Ruby
# frozen_string_literal: true
|
|
class ThemeModifierHelper
|
|
def initialize(request: nil, theme_ids: nil)
|
|
@theme_ids = theme_ids || request&.env&.[](:resolved_theme_ids)
|
|
end
|
|
|
|
ThemeModifierSet::MODIFIERS.keys.each do |modifier|
|
|
define_method(modifier) do
|
|
Theme.lookup_modifier(@theme_ids, modifier)
|
|
end
|
|
end
|
|
end
|