20 lines
445 B
Ruby
20 lines
445 B
Ruby
class Page < ApplicationRecord
|
|
include Leafable
|
|
|
|
cattr_accessor :preview_renderer do
|
|
renderer = Redcarpet::Render::HTML.new(ActionText::Markdown::DEFAULT_RENDERER_OPTIONS)
|
|
Redcarpet::Markdown.new(renderer, ActionText::Markdown::DEFAULT_MARKDOWN_EXTENSIONS)
|
|
end
|
|
|
|
has_markdown :body
|
|
|
|
def html_preview
|
|
preview_renderer.render(body_preview)
|
|
end
|
|
|
|
private
|
|
def body_preview
|
|
body.content.to_s.first(1024)
|
|
end
|
|
end
|