Add editable pages
This commit is contained in:
@@ -2,15 +2,21 @@ module Adamantium
|
||||
module Views
|
||||
module Pages
|
||||
class Show < Adamantium::View
|
||||
include Deps[renderer: "renderers.markdown"]
|
||||
include Deps["repos.page_repo", renderer: "renderers.markdown"]
|
||||
|
||||
expose :page_content do |slug:|
|
||||
markdown_content = File.read("app/content/pages/#{slug}.md")
|
||||
|
||||
renderer.call(content: markdown_content)
|
||||
expose :page_content do |page|
|
||||
renderer.call(content: page.content)
|
||||
rescue Errno::ENOENT
|
||||
renderer.call(content: "## Page not found")
|
||||
end
|
||||
|
||||
expose :page_name do |page|
|
||||
page.name
|
||||
end
|
||||
|
||||
private_expose :page do |slug:|
|
||||
page_repo.fetch!(slug: slug)
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
Reference in New Issue
Block a user