class Textigniter::Build::RenderFiles

The RenderFiles class outputs static files based on a list passed to it. The list contains at least two key value pairs.

For example: items = “/some-directory” items = “some-filename” The extension is added in this class

Public Instance Methods

render(items, format) click to toggle source

Renders static content to file

# File lib/textigniter/build/render_files.rb, line 10
def render(items, format)
  # Render each item
  items.each do |item|
    # Recursively create directory if it doesn't exist
    FileUtils.mkpath item['directory']
    # Switch based on format and build a filename
    case format
      when 'content'
        filename = item['directory'] + '/index.html'
      when 'styles'
        filename = item['directory'] + '/' + item['filename'] + '.css'
      when 'scripts'
        filename = item['directory'] + '/' + item['filename'] + '.js'          
    end
    # Write the output to file
    File.open(filename, 'w') do |file|
       file.write item['output']
    end
  end
end