Sha256: a32a9d01be7157c7c00a11e431ed22f9aad2f5e62f013b635cff7b2acf17d8ab

Contents?: true

Size: 1.59 KB

Versions: 3

Compression:

Stored size: 1.59 KB

Contents

#Encoding: UTF-8
module Caramelize
  autoload :DatabaseConnector, 'caramelize/database_connector'
  autoload :Wikka2MarkdownConverter, 'caramelize/wikka2markdown_converter'
  
  class WikkaWiki < Wiki
    include DatabaseConnector
    include Wikka2MarkdownConverter
    
    # after calling this action, I expect the @titles and @revisions to be filled
    def read_pages
      sql = "SELECT id, tag, body, time, latest, user, note FROM wikka_pages ORDER BY time;"
      @revisions = []
      @titles = []
      results = database.query(sql)
      results.each do |row|
        @titles << row["tag"]
        author = @authors[row["user"]]
        page = Page.new({:id => row["id"],
                            :title =>   row["tag"],
                            :body =>    row["body"],
                            :syntax =>  'wikka',
                            :latest =>  row["latest"] == "Y",
                            :time =>    row["time"],
                            :message => row["note"],
                            :author =>  author,
                            :author_name => row["user"]})
        @revisions << page
      end
      @titles.uniq!
      #@revisions.sort! { |a,b| a.time <=> b.time }
      
      @revisions
    end
    
    def read_authors
      sql = "SELECT name, email FROM wikka_users;"
      @authors = {}
      results = database.query(sql)
      results.each do |row|
        author = Author.new
        #author.id    = row["id"]
        author.name  = row["name"]
        author.email = row["email"]
        @authors[author.name] = author
      end
      @authors
    end
  end    
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
caramelize-0.0.3 lib/caramelize/wikkawiki.rb
caramelize-0.0.2 lib/caramelize/wikkawiki.rb
caramelize-0.0.1 lib/caramelize/wikkawiki.rb