From f1d74871e7f00e8bbde3501a759487ac8cc4c3fc Mon Sep 17 00:00:00 2001 From: David Heinemeier Hansson Date: Fri, 13 Apr 2018 16:23:04 -0700 Subject: Rename from Active Text to Action Text This is more like Action View than Active Model. --- app/helpers/action_text/tag_helper.rb | 48 +++++++++++++++++++++++++++++++++++ app/helpers/active_text/tag_helper.rb | 48 ----------------------------------- 2 files changed, 48 insertions(+), 48 deletions(-) create mode 100644 app/helpers/action_text/tag_helper.rb delete mode 100644 app/helpers/active_text/tag_helper.rb (limited to 'app/helpers') diff --git a/app/helpers/action_text/tag_helper.rb b/app/helpers/action_text/tag_helper.rb new file mode 100644 index 0000000000..bd2727bca6 --- /dev/null +++ b/app/helpers/action_text/tag_helper.rb @@ -0,0 +1,48 @@ +module ActionText + module TagHelper + cattr_accessor(:id, instance_accessor: false) { 0 } + + def rich_text_field_tag(name, value = nil, options = {}) + options = options.symbolize_keys + + options[:input] ||= "trix_input_#{ActionText::TagHelper.id += 1}" + options[:data] ||= {} + options[:data][:direct_upload_url] = rails_direct_uploads_url + options[:data][:blob_url_template] = rails_service_blob_url(":signed_id", ":filename") + + editor_tag = content_tag("trix-editor", "", options) + input_tag = hidden_field_tag(name, value, id: options[:input]) + + editor_tag + input_tag + end + end +end + +module ActionView::Helpers + class Tags::ActionText < Tags::Base + delegate :dom_id, to: ActionView::RecordIdentifier + + def render + options = @options.stringify_keys + add_default_name_and_id(options) + options["input"] ||= dom_id(object, [options["id"], :trix_input].compact.join("_")) + @template_object.rich_text_field_tag(options.delete("name"), editable_value, options) + end + + def editable_value + value.try(:to_trix_html) + end + end + + module FormHelper + def rich_text_field(object_name, method, options = {}) + Tags::ActionText.new(object_name, method, self, options).render + end + end + + class FormBuilder + def rich_text_field(method, options = {}) + @template.rich_text_field(@object_name, method, objectify_options(options)) + end + end +end diff --git a/app/helpers/active_text/tag_helper.rb b/app/helpers/active_text/tag_helper.rb deleted file mode 100644 index 1b97621dac..0000000000 --- a/app/helpers/active_text/tag_helper.rb +++ /dev/null @@ -1,48 +0,0 @@ -module ActiveText - module TagHelper - cattr_accessor(:id, instance_accessor: false) { 0 } - - def rich_text_field_tag(name, value = nil, options = {}) - options = options.symbolize_keys - - options[:input] ||= "trix_input_#{ActiveText::TagHelper.id += 1}" - options[:data] ||= {} - options[:data][:direct_upload_url] = rails_direct_uploads_url - options[:data][:blob_url_template] = rails_service_blob_url(":signed_id", ":filename") - - editor_tag = content_tag("trix-editor", "", options) - input_tag = hidden_field_tag(name, value, id: options[:input]) - - editor_tag + input_tag - end - end -end - -module ActionView::Helpers - class Tags::ActiveText < Tags::Base - delegate :dom_id, to: ActionView::RecordIdentifier - - def render - options = @options.stringify_keys - add_default_name_and_id(options) - options["input"] ||= dom_id(object, [options["id"], :trix_input].compact.join("_")) - @template_object.rich_text_field_tag(options.delete("name"), editable_value, options) - end - - def editable_value - value.try(:to_trix_html) - end - end - - module FormHelper - def rich_text_field(object_name, method, options = {}) - Tags::ActiveText.new(object_name, method, self, options).render - end - end - - class FormBuilder - def rich_text_field(method, options = {}) - @template.rich_text_field(@object_name, method, objectify_options(options)) - end - end -end -- cgit v1.2.3