diff options
author | Marius Balteanu <marius.balteanu@zitec.com> | 2021-08-11 21:40:56 +0000 |
---|---|---|
committer | Marius Balteanu <marius.balteanu@zitec.com> | 2021-08-11 21:40:56 +0000 |
commit | 9af2ba2c13d2dc706bdf1387110c13b82175a0cf (patch) | |
tree | eab705cebf67e7daaa30532a62dbdb1c8dfba205 /lib/redmine/wiki_formatting/common_mark/helper.rb | |
parent | fe4d0d93da6f95408582e53b425e89fc40751f6f (diff) | |
download | redmine-9af2ba2c13d2dc706bdf1387110c13b82175a0cf.tar.gz redmine-9af2ba2c13d2dc706bdf1387110c13b82175a0cf.zip |
Adds CommonMark Markdown (GitHub Flavored) as third text formatting option (#32424).
Patch by Jens Krämer.
git-svn-id: http://svn.redmine.org/redmine/trunk@21156 e93f8b46-1217-0410-a6f0-8f06a7374b81
Diffstat (limited to 'lib/redmine/wiki_formatting/common_mark/helper.rb')
-rw-r--r-- | lib/redmine/wiki_formatting/common_mark/helper.rb | 57 |
1 files changed, 57 insertions, 0 deletions
diff --git a/lib/redmine/wiki_formatting/common_mark/helper.rb b/lib/redmine/wiki_formatting/common_mark/helper.rb new file mode 100644 index 000000000..471835708 --- /dev/null +++ b/lib/redmine/wiki_formatting/common_mark/helper.rb @@ -0,0 +1,57 @@ +# frozen_string_literal: true + +# Redmine - project management software +# Copyright (C) 2006-2021 Jean-Philippe Lang +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + +module Redmine + module WikiFormatting + module CommonMark + module Helper + include Redmine::WikiFormatting::Markdown::Helper + + def wikitoolbar_for(field_id, preview_url = preview_text_path) + heads_for_wiki_formatter + help_file = "/help/#{current_language.to_s.downcase}/wiki_syntax_common_mark.html" + # fall back to the english help page if there is none for the current + # language + unless File.readable? Rails.root.join("public", help_file) + help_file = "/help/en/wiki_syntax_common_mark.html" + end + url = "#{Redmine::Utils.relative_url_root}#{help_file}" + javascript_tag( + "var wikiToolbar = new jsToolBar(document.getElementById('#{field_id}')); " \ + "wikiToolbar.setHelpLink('#{escape_javascript url}'); " \ + "wikiToolbar.setPreviewUrl('#{escape_javascript preview_url}'); " \ + "wikiToolbar.draw();" + ) + end + + # removes the 'underline' icon from the markdown toolbar since there + # is no such thing in CommonMark + def heads_for_wiki_formatter + unless @common_mark_heads_for_wiki_formatter_included + super + content_for :header_tags do + javascript_tag(%[delete jsToolBar.prototype.elements.ins;]) + end + @common_mark_heads_for_wiki_formatter_included = true + end + end + end + end + end +end |