Class: PageTitle
- Inherits:
-
Object
- Object
- PageTitle
- Defined in:
- lib/nexmo_developer/app/presenters/page_title.rb
Instance Method Summary collapse
- #default_title ⇒ Object
-
#initialize(product, document_title) ⇒ PageTitle
constructor
A new instance of PageTitle.
- #load_config ⇒ Object
- #product_title_from_config(product) ⇒ Object
- #title ⇒ Object
Constructor Details
#initialize(product, document_title) ⇒ PageTitle
Returns a new instance of PageTitle.
2 3 4 5 |
# File 'lib/nexmo_developer/app/presenters/page_title.rb', line 2 def initialize(product, document_title) @product = product @document_title = document_title end |
Instance Method Details
#default_title ⇒ Object
32 33 34 35 36 37 |
# File 'lib/nexmo_developer/app/presenters/page_title.rb', line 32 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 |
#load_config ⇒ Object
23 24 25 26 27 28 29 30 |
# File 'lib/nexmo_developer/app/presenters/page_title.rb', line 23 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 |
#product_title_from_config(product) ⇒ Object
17 18 19 20 21 |
# File 'lib/nexmo_developer/app/presenters/page_title.rb', line 17 def product_title_from_config(product) config = load_config item = config['products'].select { |config_product| config_product['path'] == product }[0] item['name'] end |
#title ⇒ Object
7 8 9 10 11 12 13 14 15 |
# File 'lib/nexmo_developer/app/presenters/page_title.rb', line 7 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 |