class OakTree::Template::Post
Public Class Methods
new(spec, post)
click to toggle source
# File lib/oaktree/template/post.rb, line 13 def initialize spec, post @post = post @content = nil @spec = spec document = ::Kramdown::Document.new(@post.content) @content, warnings = ::OakTree::Kramdown::OakHtml.convert(document.root, :auto_id_prefix => @post.time.strftime('%Y_%m_%d_')) puts warnings unless warnings.empty? end
Public Instance Methods
[](key)
click to toggle source
# File lib/oaktree/template/post.rb, line 91 def [](key) if respond_to?(key) send(key) elsif key.to_s.end_with?('?') key = case key when Symbol then key.to_s.chomp('?').to_sym when String then key.to_s.chomp('?') else raise "Not sure what has happened here" end respond_to?(key) || @post.metadata.include?(key) else @post.metadata[key] end end
content()
click to toggle source
# File lib/oaktree/template/post.rb, line 59 def content @content end
has_key?(key)
click to toggle source
# File lib/oaktree/template/post.rb, line 87 def has_key?(key) respond_to?(key) || @post.metadata.include?(key) || key.to_s.end_with?('?') end
permalink()
click to toggle source
# File lib/oaktree/template/post.rb, line 38 def permalink @post.permalink end
post?()
click to toggle source
# File lib/oaktree/template/post.rb, line 55 def post? @post.kind == :post end
post_data()
click to toggle source
# File lib/oaktree/template/post.rb, line 22 def post_data @post end
public_path()
click to toggle source
# File lib/oaktree/template/post.rb, line 67 def public_path @post.public_path end
published?()
click to toggle source
# File lib/oaktree/template/post.rb, line 75 def published? @post.status == :published end
slug()
click to toggle source
# File lib/oaktree/template/post.rb, line 71 def slug @post.slug end
source_link()
click to toggle source
# File lib/oaktree/template/post.rb, line 42 def source_link @post.link end
source_link?()
click to toggle source
# File lib/oaktree/template/post.rb, line 46 def source_link? plink = @post.link ! (plink.nil? || plink.empty?) end
static?()
click to toggle source
# File lib/oaktree/template/post.rb, line 51 def static? @post.kind == :static end
status()
click to toggle source
# File lib/oaktree/template/post.rb, line 83 def status @post.status end
time()
click to toggle source
# File lib/oaktree/template/post.rb, line 63 def time proc_for_datetime(@post.time) end
title()
click to toggle source
# File lib/oaktree/template/post.rb, line 26 def title @post.title end
unpublished?()
click to toggle source
# File lib/oaktree/template/post.rb, line 79 def unpublished? ! published? end
url()
click to toggle source
# File lib/oaktree/template/post.rb, line 30 def url if source_link? source_link else permalink end end