Sha256: d3dba3b33d39c513efc84050ad8dd68b2a34f25286aa73aa33efe261c118a6d1

Contents?: true

Size: 788 Bytes

Versions: 2

Compression:

Stored size: 788 Bytes

Contents

module Howl
  class Post < Template
    include Comparable

    def date
      view.date? ? Time.parse(view.date.to_s) : File.mtime(path)
    end

    def <=>(other)
      other.date <=> self.date
    end

    def output_path
      site.output_path("posts") + date.strftime("%Y/%m/%d") + output_filename
    end

    def title
      view.title || path.basename(extension).to_s
    end

    def dom_id
      title.slugify
    end

    def link
      "/" + output_path.relative_path_from(site.output_path).to_s
    end

    def rendered_content
      render_view = view.dup
      render_view.delete('template')
      converter.convert(Mustache.render(@content, render_view))
    end

    def view_data
      { :site => site,
        :date => date,
        :link => link }
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
howl-0.6.0 lib/howl/post.rb
howl-0.5.5 lib/howl/post.rb