class MongoidMarkdownExtension::Markdown
Attributes
configuration[W]
Public Class Methods
configuration()
click to toggle source
# File lib/mongoid_markdown_extension/markdown.rb, line 10 def self.configuration @configuration ||= Configuration.new end
configure() { |configuration| ... }
click to toggle source
# File lib/mongoid_markdown_extension/markdown.rb, line 18 def self.configure yield(configuration) end
demongoize(value)
click to toggle source
# File lib/mongoid_markdown_extension/markdown.rb, line 22 def self.demongoize(value) Markdown.new(value) end
evolve(value)
click to toggle source
# File lib/mongoid_markdown_extension/markdown.rb, line 33 def self.evolve(value) case value when Markdown then value.mongoize else value end end
mongoize(value)
click to toggle source
# File lib/mongoid_markdown_extension/markdown.rb, line 26 def self.mongoize(value) case value when Markdown then value.mongoize else value end end
new(str)
click to toggle source
Calls superclass method
# File lib/mongoid_markdown_extension/markdown.rb, line 40 def initialize(str) super(str.to_s) end
reset()
click to toggle source
# File lib/mongoid_markdown_extension/markdown.rb, line 14 def self.reset @configuration = Configuration.new end
Public Instance Methods
to_html()
click to toggle source
# File lib/mongoid_markdown_extension/markdown.rb, line 44 def to_html markdown_renderer.render(to_s).html_safe end
to_inline_html(line_breaks: false)
click to toggle source
# File lib/mongoid_markdown_extension/markdown.rb, line 48 def to_inline_html(line_breaks: false) rendered = markdown_inline_renderer.render(to_s).gsub(/(<br\s?\/?>)+?\z/, '') rendered.gsub!(/(<br\s?\/?>)+?\Z/, '') if !line_breaks rendered.html_safe end
to_stripped_s()
click to toggle source
# File lib/mongoid_markdown_extension/markdown.rb, line 54 def to_stripped_s markdown_stripdown_renderer.render(to_s).try(:strip) end
Private Instance Methods
markdown_inline_renderer()
click to toggle source
TODO: how to combine custom render class with the InlineRenderer
?
# File lib/mongoid_markdown_extension/markdown.rb, line 69 def markdown_inline_renderer inline_render_class = MongoidMarkdownExtension::Markdown.configuration.inline_render_class render_options = MongoidMarkdownExtension::Markdown.configuration.render_options extensions = MongoidMarkdownExtension::Markdown.configuration.extensions extensions[:tables] = false Redcarpet::Markdown.new(inline_render_class.new(render_options), extensions) end
markdown_renderer()
click to toggle source
# File lib/mongoid_markdown_extension/markdown.rb, line 60 def markdown_renderer render_class = MongoidMarkdownExtension::Markdown.configuration.render_class render_options = MongoidMarkdownExtension::Markdown.configuration.render_options extensions = MongoidMarkdownExtension::Markdown.configuration.extensions Redcarpet::Markdown.new(render_class.new(render_options), extensions) end
markdown_stripdown_renderer()
click to toggle source
# File lib/mongoid_markdown_extension/markdown.rb, line 78 def markdown_stripdown_renderer Redcarpet::Markdown.new(Redcarpet::Render::StripDown) end