Sha256: cdf12872b9c25d71a620117f12386e70eedaa5d0633b7f589c83d2a5103e5fca

Contents?: true

Size: 1.02 KB

Versions: 94

Compression:

Stored size: 1.02 KB

Contents

class PageTitle
  def initialize(product, document_title)
    @product        = product
    @document_title = document_title
  end

  def title
    if @product && @document_title
      "#{product_title_from_config(@product)} > #{@document_title} | #{default_title}"
    elsif @document_title
      "#{@document_title} | #{default_title}"
    else
      default_title
    end
  end

  def product_title_from_config(product)
    config = load_config
    item = config['products'].select { |config_product| config_product['path'] == product }[0]
    item['name']
  end

  def load_config
    @load_config ||= begin
      path ||= "#{Rails.configuration.docs_base_path}/config/products.yml"
      raise 'You must provide a config/products.yml file in your documentation path.' unless File.exist?(path)

      YAML.safe_load(File.open(path))
    end
  end

  def default_title
    @default_title ||= begin
      config = YAML.safe_load(File.open("#{Rails.configuration.docs_base_path}/config/header_meta.yml"))
      config['title']
    end
  end
end

Version data entries

94 entries across 94 versions & 1 rubygems

Version Path
station-0.5.16 lib/nexmo_developer/app/presenters/page_title.rb
station-0.5.15 lib/nexmo_developer/app/presenters/page_title.rb
station-0.5.14 lib/nexmo_developer/app/presenters/page_title.rb
station-0.5.13 lib/nexmo_developer/app/presenters/page_title.rb
station-0.5.12 lib/nexmo_developer/app/presenters/page_title.rb
station-0.5.11 lib/nexmo_developer/app/presenters/page_title.rb
station-0.5.10 lib/nexmo_developer/app/presenters/page_title.rb
station-0.5.9 lib/nexmo_developer/app/presenters/page_title.rb
station-0.5.8 lib/nexmo_developer/app/presenters/page_title.rb
station-0.5.7 lib/nexmo_developer/app/presenters/page_title.rb
station-0.5.6 lib/nexmo_developer/app/presenters/page_title.rb
station-0.5.5 lib/nexmo_developer/app/presenters/page_title.rb
station-0.5.4 lib/nexmo_developer/app/presenters/page_title.rb
station-0.5.3 lib/nexmo_developer/app/presenters/page_title.rb
station-0.5.2 lib/nexmo_developer/app/presenters/page_title.rb
station-0.5.1 lib/nexmo_developer/app/presenters/page_title.rb
station-0.5.0 lib/nexmo_developer/app/presenters/page_title.rb
station-0.4.9 lib/nexmo_developer/app/presenters/page_title.rb
station-0.4.8 lib/nexmo_developer/app/presenters/page_title.rb
station-0.4.7 lib/nexmo_developer/app/presenters/page_title.rb