class JekyllEBook::Config

Public Class Methods

new(config) click to toggle source
# File lib/jekyll-e-book/config.rb, line 7
def initialize(config)
  @config = config
end

Public Instance Methods

creator() click to toggle source
# File lib/jekyll-e-book/config.rb, line 43
def creator
  case
  when !ebook['creator'].nil?
    ebook['creator']
  when site['author'].is_a?(String)
    site['author']
  when site['author'].is_a?(Hash) && !site['author']['name'].nil?
    site['author']['name']
  else
    nil
  end
end
date() click to toggle source
# File lib/jekyll-e-book/config.rb, line 39
def date
  ebook['date'] || Time.now
end
destination() click to toggle source
# File lib/jekyll-e-book/config.rb, line 19
def destination
  File.expand_path(ebook['destination'] || '_ebook')
end
file_name() click to toggle source
# File lib/jekyll-e-book/config.rb, line 23
def file_name
  "#{ebook['file_name'] || title}.epub"
end
identifier() click to toggle source
# File lib/jekyll-e-book/config.rb, line 27
def identifier
  ebook['identifier'] || site['url'].nil? ? nil : "#{site['url']}#{site['base_url']}" || SecureRandom.uuid
end
language() click to toggle source
# File lib/jekyll-e-book/config.rb, line 35
def language
  ebook['language'] || site['language'] || site['lang'] or raise InvalidConfigError, 'Language is required'
end
layout() click to toggle source
# File lib/jekyll-e-book/config.rb, line 15
def layout
  ebook['layout']
end
page_progression_direction() click to toggle source
# File lib/jekyll-e-book/config.rb, line 56
def page_progression_direction
  ebook['page_progression_direction']
end
skip_build?() click to toggle source
# File lib/jekyll-e-book/config.rb, line 11
def skip_build?
  ebook['build'] == 'false'
end
title() click to toggle source
# File lib/jekyll-e-book/config.rb, line 31
def title
  ebook['title'] || site['title'] or raise InvalidConfigError, 'Title is required'
end

Private Instance Methods

ebook() click to toggle source
# File lib/jekyll-e-book/config.rb, line 66
def ebook
  @config['ebook'] || {}
end
site() click to toggle source
# File lib/jekyll-e-book/config.rb, line 62
def site
  @config
end