mirror of
https://github.com/discourse/discourse.git
synced 2025-02-25 18:55:32 -06:00
Support for an HTML builder that can create dynamic HTML
This commit is contained in:
@@ -13,7 +13,6 @@ class DiscoursePluginRegistry
|
||||
attr_writer :handlebars
|
||||
attr_writer :serialized_current_user_fields
|
||||
attr_writer :seed_data
|
||||
|
||||
attr_accessor :custom_html
|
||||
|
||||
def plugins
|
||||
@@ -60,6 +59,10 @@ class DiscoursePluginRegistry
|
||||
def seed_data
|
||||
@seed_data ||= HashWithIndifferentAccess.new({})
|
||||
end
|
||||
|
||||
def html_builders
|
||||
@html_builders ||= {}
|
||||
end
|
||||
end
|
||||
|
||||
def register_js(filename, options={})
|
||||
@@ -127,6 +130,14 @@ class DiscoursePluginRegistry
|
||||
self.seed_data[key] = value
|
||||
end
|
||||
|
||||
def self.register_html_builder(name, &block)
|
||||
html_builders[name] = block
|
||||
end
|
||||
|
||||
def self.build_html(name)
|
||||
html_builders[name]&.call
|
||||
end
|
||||
|
||||
def javascripts
|
||||
self.class.javascripts
|
||||
end
|
||||
@@ -169,6 +180,7 @@ class DiscoursePluginRegistry
|
||||
sass_variables.clear
|
||||
serialized_current_user_fields
|
||||
asset_globs.clear
|
||||
html_builders.clear
|
||||
end
|
||||
|
||||
def self.setup(plugin_class)
|
||||
|
Reference in New Issue
Block a user