Sha256: bf4eec5f816f9b4ce2ef97366f4ff7372a0830f0020614be4f1368ecbd467f5e

Contents?: true

Size: 688 Bytes

Versions: 6

Compression:

Stored size: 688 Bytes

Contents

require 'erubis'

module ImageSite
  class Model
    attr_reader :number

    def self.template
      @template ||= IO.read File.expand_path(
        "#{File.dirname __FILE__}/../../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

6 entries across 6 versions & 1 rubygems

Version Path
imagesite-1.0.11 lib/image_site/model.rb
imagesite-1.0.10 lib/image_site/model.rb
imagesite-1.0.9 lib/image_site/model.rb
imagesite-1.0.8 lib/image_site/model.rb
imagesite-1.0.7 lib/image_site/model.rb
imagesite-1.0.6 lib/image_site/model.rb