class Caramelize::InputWiki::Wiki

Attributes

description[RW]
namespaces[RW]
options[RW]
revisions[RW]
titles[RW]
wiki_title[RW]

Public Class Methods

new(options={}) click to toggle source
# File lib/caramelize/input_wiki/wiki.rb, line 8
def initialize(options={})
  @options = options
  @options[:filters] = []
  @namespaces = []
end

Public Instance Methods

authors() click to toggle source
# File lib/caramelize/input_wiki/wiki.rb, line 30
def authors
  @authors ||= {}
end
convert_markup?(to_markup) click to toggle source
# File lib/caramelize/input_wiki/wiki.rb, line 42
def convert_markup?(to_markup)
  markup != to_markup
end
filters() click to toggle source
# File lib/caramelize/input_wiki/wiki.rb, line 46
def filters
  @options[:filters]
end
latest_revisions() click to toggle source
# File lib/caramelize/input_wiki/wiki.rb, line 50
def latest_revisions
  @latest_revisions ||= titles.map { |title| revisions_by_title(title).last }.compact
end
markup() click to toggle source
# File lib/caramelize/input_wiki/wiki.rb, line 54
def markup
  @options[:markup]
end
read_authors() click to toggle source

return an empty array in case this action was not overridden

# File lib/caramelize/input_wiki/wiki.rb, line 22
def read_authors
  []
end
revisions_by_title(title) click to toggle source
# File lib/caramelize/input_wiki/wiki.rb, line 14
def revisions_by_title(title)
  # new array only containing pages by this name sorted by time asc
  # this does not support renamed pages
  revisions.select { |revision| revision.title == title }
           .sort { |x,y| x.time <=> y.time }
end