Module: Toto::Template

Included in:
Archives, Article, Repo, Site::Context
Defined in:
lib/toto.rb

Class Method Summary collapse

Instance Method Summary collapse

Dynamic Method Handling

This class handles dynamic methods through the method_missing method

#method_missing(m, *args, &blk) ⇒ Object



47
48
49
# File 'lib/toto.rb', line 47

def method_missing m, *args, &blk
  self.keys.include?(m) ? self[m] : super
end

Class Method Details

.included(obj) ⇒ Object



51
52
53
54
55
# File 'lib/toto.rb', line 51

def self.included obj
  obj.class_eval do
    define_method(obj.to_s.split('::').last.downcase) { self }
  end
end

Instance Method Details

#markdown(text) ⇒ Object



39
40
41
42
43
44
45
# File 'lib/toto.rb', line 39

def markdown text
  if (options = @config[:markdown])
    Markdown.new(text.to_s.strip).to_html
  else
    text.strip
  end
end

#to_html(page, config, &blk) ⇒ Object



34
35
36
37
# File 'lib/toto.rb', line 34

def to_html page, config, &blk
  path = ([:layout, :repo].include?(page) ? Paths[:templates] : Paths[:pages])
  config[:to_html].call(path, page, binding)
end