Sha256: 42a63efdaa16fbe99b8a8b83b27584f6b61a37b876dd313dbcaaaaaada772205

Contents?: true

Size: 630 Bytes

Versions: 2

Compression:

Stored size: 630 Bytes

Contents

require 'erubis'

module ImageSite
  class Model
    attr_reader :number

    def self.template
      @template ||= IO.read "template/#{template_name}"
    end

    def initialize(number, options)
      @number = number
      @options = options
    end

    def make_subdir(subdir)
      FileUtils.mkdir_p "#{@options.output_dir}/#{subdir}"
    end

    def write_html(bindings)
      make_subdir File.dirname(relative_html)
      bindings = { options: @options }.merge bindings
      page = Erubis::Eruby.new(self.class.template).result(bindings)
      IO.write "#{@options.output_dir}/#{relative_html}", page
    end

  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
imagesite-1.0.0 lib/image_site/model.rb
imagesite-1.0.0.pre lib/image_site/model.rb