class Blogster::TemplatesParser

Attributes

dirs[R]

Public Class Methods

new(dirs) click to toggle source
# File lib/blogster/templates_parser.rb, line 5
def initialize(dirs)
  @dirs = dirs
end

Public Instance Methods

folder_files(dir) click to toggle source
# File lib/blogster/templates_parser.rb, line 24
def folder_files(dir)
  Dir[File.join(dir, '*')]
end
get_page_from_dir(dir) click to toggle source
# File lib/blogster/templates_parser.rb, line 20
def get_page_from_dir(dir)
  dir.split('/').last.delete('_')
end
parse_template_path(path) click to toggle source
# File lib/blogster/templates_parser.rb, line 28
def parse_template_path(path)
  *template_path, name = path.split('/')
  template_path = File.join(*template_path)
  [template_path, name]
end
to_templates() click to toggle source
# File lib/blogster/templates_parser.rb, line 9
def to_templates
  dirs.each do |dir|
    page = get_page_from_dir(dir)
    templates[page] = folder_files(dir).map do |path|
      template_path, name = parse_template_path(path)
      new_template(template_path, name)
    end
  end
  templates
end

Private Instance Methods

new_template(template_path, name) click to toggle source
# File lib/blogster/templates_parser.rb, line 40
def new_template(template_path, name)
  Blogster::Template.new(template_path, name)
end
templates() click to toggle source
# File lib/blogster/templates_parser.rb, line 36
def templates
  @templates ||= Blogster::Templates.new
end