Module: TopHat::MetaHelper

Defined in:
lib/tophat/meta.rb

Instance Method Summary collapse

Instance Method Details

#charset(charset, options = {}) ⇒ Object



9
10
11
# File 'lib/tophat/meta.rb', line 9

def charset(charset, options={})
  meta_tag(options.merge(:charset => charset), true)
end

#description(options = {}) ⇒ Object

page descriptions <meta name=“description” content=“Description goes here.” />



23
24
25
26
27
28
29
30
31
32
33
34
35
# File 'lib/tophat/meta.rb', line 23

def description(options={})
  options ||= {}
  if options.is_a? String
    TopHat.current['description'] = options

  else
    default_description = options.delete(:default)
    options[:name] = 'description'
    options[:content] = TopHat.current['description'] || default_description

    meta_tag(options) if options[:content]
  end
end

#itemprop(name, value) ⇒ Object



17
18
19
# File 'lib/tophat/meta.rb', line 17

def itemprop(name, value)
  meta_tag(:itemprop => name, :content => value)
end

#keywords(options = {}) ⇒ Object

keywords <meta name=“keywords” content=“Keywords go here.” />



39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
# File 'lib/tophat/meta.rb', line 39

def keywords(options={})
  options ||= {}
  if options.is_a?(String)
    TopHat.current['keywords'] = options

  elsif options.is_a?(Array)
    TopHat.current['keywords'] = options.join(', ')

  else
    options[:name] = 'keywords'
    default_keywords = options.delete(:default) || []
    display_keywords = TopHat.current['keywords'].blank? ? default_keywords : TopHat.current['keywords']

    # normalize the keywords
    default_keywords = default_keywords.is_a?(String) ? default_keywords.split(',') : default_keywords
    display_keywords = display_keywords.is_a?(String) ? display_keywords.split(',') : display_keywords

    # merge keyword arrays if merge is set to true
    display_keywords += default_keywords if options.delete(:merge_default) == true

    options.merge!(:content => display_keywords.uniq.join(', ').squeeze(' '))
    meta_tag(options) if display_keywords.any?
  end
end

#meta_tag(options, open = false, escape = true) ⇒ Object

Meta Tag helper



5
6
7
# File 'lib/tophat/meta.rb', line 5

def meta_tag(options, open=false, escape=true)
  tag(:meta, options, open, escape)
end

#viewport(viewport, options = {}) ⇒ Object



13
14
15
# File 'lib/tophat/meta.rb', line 13

def viewport(viewport, options={})
  meta_tag(options.merge(:name => 'viewport', :content => viewport), true)
end