diff --git a/app/models/site_setting.rb b/app/models/site_setting.rb index 160d19e84e6..f0be63c6688 100644 --- a/app/models/site_setting.rb +++ b/app/models/site_setting.rb @@ -3,7 +3,6 @@ require 'site_setting_extension' require_dependency 'global_path' require_dependency 'site_settings/yaml_loader' -require 'htmlentities' class SiteSetting < ActiveRecord::Base extend GlobalPath @@ -123,7 +122,6 @@ class SiteSetting < ActiveRecord::Base @attachment_content_type_blacklist_regex = nil @attachment_filename_blacklist_regex = nil @unicode_username_whitelist_regex = nil - @pretty_quote_entities = nil end def self.attachment_content_type_blacklist_regex @@ -139,22 +137,6 @@ class SiteSetting < ActiveRecord::Base ? Regexp.new(SiteSetting.unicode_username_character_whitelist) : nil end - def self.pretty_quote_entities - @pretty_quote_entities ||= begin - htmlentities = HTMLEntities.new - quotation_marks = SiteSetting.markdown_typographer_quotation_marks - .split("|") - .map { |quote| htmlentities.encode(quote, :basic, :named, :decimal) } - - { - double_left_quote: quotation_marks[0], - double_right_quote: quotation_marks[1], - single_left_quote: quotation_marks[2], - single_right_quote: quotation_marks[3] - } - end - end - # helpers for getting s3 settings that fallback to global class Upload def self.s3_cdn_url diff --git a/app/models/topic.rb b/app/models/topic.rb index 4fd4c67e6fd..648da51a741 100644 --- a/app/models/topic.rb +++ b/app/models/topic.rb @@ -336,7 +336,7 @@ class Topic < ActiveRecord::Base def self.fancy_title(title) return unless escaped = ERB::Util.html_escape(title) - fancy_title = Emoji.unicode_unescape(HtmlPrettify.render(escaped, SiteSetting.pretty_quote_entities)) + fancy_title = Emoji.unicode_unescape(HtmlPrettify.render(escaped)) fancy_title.length > Topic.max_fancy_title_length ? escaped : fancy_title end diff --git a/lib/html_prettify.rb b/lib/html_prettify.rb index c339091d586..db3bd14e08f 100644 --- a/lib/html_prettify.rb +++ b/lib/html_prettify.rb @@ -10,8 +10,8 @@ # class HtmlPrettify < String - def self.render(html, entities = {}) - new(html, [2], entities).to_html + def self.render(html) + new(html).to_html end # Create a new RubyPants instance with the text in +string+. diff --git a/spec/models/topic_spec.rb b/spec/models/topic_spec.rb index 510146a0bb8..26dda3fb468 100644 --- a/spec/models/topic_spec.rb +++ b/spec/models/topic_spec.rb @@ -390,16 +390,6 @@ describe Topic do expect(topic.fancy_title).to eq(long_title) end - it "uses the configured quote entities" do - SiteSetting.markdown_typographer_quotation_marks = "„|“|‚|‘" - topic.title = %q|"Weißt du", sagte er, "was 'Discourse' ist?"| - expect(topic.fancy_title).to eq('„Weißt du“, sagte er, „was ‚Discourse‘ ist?“') - - SiteSetting.markdown_typographer_quotation_marks = "«\u00A0|\u00A0»|‹\u00A0|\u00A0›" - topic.title = '"Qui vivra verra"' - expect(topic.fancy_title).to eq('« Qui vivra verra »') - end - context 'readonly mode' do before do Discourse.enable_readonly_mode