diff options
author | Brett Walker <bwalker@gitlab.com> | 2018-07-06 18:49:33 +0000 |
---|---|---|
committer | Sean McGivern <sean@mcgivern.me.uk> | 2018-07-06 18:49:33 +0000 |
commit | 750af9fd32a050d1d2a8a7c5d014e5467de1e87a (patch) | |
tree | 51e5a6d23d6a34541de358c29cb552449c959ed3 /app/models | |
parent | 9790fe58e590856e920877a935bfd22942787525 (diff) | |
download | gitlab-ce-750af9fd32a050d1d2a8a7c5d014e5467de1e87a.tar.gz |
Use proper markdown rendering for previews
Diffstat (limited to 'app/models')
-rw-r--r-- | app/models/concerns/cache_markdown_field.rb | 22 | ||||
-rw-r--r-- | app/models/repository.rb | 2 |
2 files changed, 14 insertions, 10 deletions
diff --git a/app/models/concerns/cache_markdown_field.rb b/app/models/concerns/cache_markdown_field.rb index 9f6358cecbe..b05bf909058 100644 --- a/app/models/concerns/cache_markdown_field.rb +++ b/app/models/concerns/cache_markdown_field.rb @@ -40,6 +40,18 @@ module CacheMarkdownField end end + class MarkdownEngine + def self.from_version(version = nil) + return :common_mark if version.nil? || version == 0 + + if version < CacheMarkdownField::CACHE_COMMONMARK_VERSION_START + :redcarpet + else + :common_mark + end + end + end + def skip_project_check? false end @@ -57,7 +69,7 @@ module CacheMarkdownField # Banzai is less strict about authors, so don't always have an author key context[:author] = self.author if self.respond_to?(:author) - context[:markdown_engine] = markdown_engine + context[:markdown_engine] = MarkdownEngine.from_version(latest_cached_markdown_version) context end @@ -123,14 +135,6 @@ module CacheMarkdownField end end - def markdown_engine - if latest_cached_markdown_version < CacheMarkdownField::CACHE_COMMONMARK_VERSION_START - :redcarpet - else - :common_mark - end - end - included do cattr_reader :cached_markdown_fields do FieldData.new diff --git a/app/models/repository.rb b/app/models/repository.rb index 22a4b73b4b0..7cd600fec5b 100644 --- a/app/models/repository.rb +++ b/app/models/repository.rb @@ -564,7 +564,7 @@ class Repository end def rendered_readme - MarkupHelper.markup_unsafe(readme.name, readme.data, project: project) if readme + MarkupHelper.markup_unsafe(readme.name, readme.data, project: project, markdown_engine: :redcarpet) if readme end cache_method :rendered_readme |