class Para::SeoTools::MetaTags::Store

Constants

TAGS

Attributes

controller[R]
defaults[R]
page[RW]

Public Class Methods

new(controller) click to toggle source
# File lib/para/seo_tools/meta_tags/store.rb, line 13
def initialize(controller)
  @controller = controller

  @defaults = if Para::SeoTools.defaults
    controller.instance_exec(&Para::SeoTools.defaults)
  else
    {}
  end
end

Public Instance Methods

charset() click to toggle source
# File lib/para/seo_tools/meta_tags/store.rb, line 23
def charset
  @charset ||= 'utf-8'
end

Private Instance Methods

fetch_value_for(tag_name) click to toggle source
# File lib/para/seo_tools/meta_tags/store.rb, line 35
def fetch_value_for(tag_name)
  ivar_name = :"@#{ tag_name }"

  if (value = instance_variable_get(ivar_name)).present?
    value
  else
    value = if (processor = MetaTags::Tags[tag_name])
      processor.new(controller).value
    end

    value = defaults[tag_name] unless value.present?

    instance_variable_set(ivar_name, value) if value
  end
end