diff options
Diffstat (limited to 'app/controllers/concerns/preview_orgmode.rb')
-rw-r--r-- | app/controllers/concerns/preview_orgmode.rb | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/app/controllers/concerns/preview_orgmode.rb b/app/controllers/concerns/preview_orgmode.rb new file mode 100644 index 00000000000..de7c22cf941 --- /dev/null +++ b/app/controllers/concerns/preview_orgmode.rb @@ -0,0 +1,26 @@ +# frozen_string_literal: true + +module PreviewOrgmode + extend ActiveSupport::Concern + + def preview_orgmode + context = { + current_user: (current_user if defined?(current_user)), + + # RelativeLinkFilter + project: project, + commit: @commit, + project_wiki: @project_wiki, + ref: @ref, + requested_path: @path + } + + html = Gitlab::OtherMarkup.render('preview.org', params[:text], context) + html = Banzai.post_process(html, context) + html = Hamlit::RailsHelpers.preserve(html) + + render json: { + body: html + } + end +end |