diff --git a/Gemfile b/Gemfile index 20d1473..5debb5f 100644 --- a/Gemfile +++ b/Gemfile @@ -42,6 +42,7 @@ gem 'flipper-active_record' gem 'flipper-ui' gem 'gpgme', '~> 2.0.24' gem 'zbase32', '~> 0.1.1' +gem 'kramdown' # HTTP requests gem 'faraday' diff --git a/Gemfile.lock b/Gemfile.lock index c96c0c3..7111c12 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -549,6 +549,7 @@ DEPENDENCIES image_processing (~> 1.12.2) importmap-rails jbuilder (~> 2.7) + kramdown letter_opener letter_opener_web listen (~> 3.2) diff --git a/app/helpers/editable_content_helper.rb b/app/helpers/editable_content_helper.rb new file mode 100644 index 0000000..b3d98b5 --- /dev/null +++ b/app/helpers/editable_content_helper.rb @@ -0,0 +1,10 @@ +module EditableContentHelper + def editable_content_for(path, key, default: nil, create_rich: false) + @content = EditableContent.find_by(path: "contributions/other", key: key) + @content.content.present? ? @content.content : default + end + + def markdown_to_html(string) + raw Kramdown::Document.new(string, { input: "GFM" }).to_html + end +end