Module: Guides::Helpers

Defined in:
lib/guides/helpers.rb

Instance Method Summary collapse

Instance Method Details

#author(name, nick, image = 'credits_pic_blank.gif', &block) ⇒ Object



37
38
39
40
41
42
43
44
# File 'lib/guides/helpers.rb', line 37

def author(name, nick, image = 'credits_pic_blank.gif', &block)
  image = "images/#{image}" unless image =~ /^http/

  result = (:img, nil, :src => image, :class => 'left pic', :alt => name)
  result << (:h3, name)
  result << (:p, capture(&block))
  (:div, result, :class => 'clearfix', :id => nick)
end

#clickable_indexObject



3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
# File 'lib/guides/helpers.rb', line 3

def clickable_index
  all_guides = Guides.meta["index"]

  total_guides = all_guides.inject(0) do |sum, (name, guides)|
    sum + guides.size
  end

  lgroup, rgroup, counted_guides = {}, {}, 0

  all_guides.each do |name, guides|
    if counted_guides > (total_guides / 2.0)
      rgroup[name] = guides
    else
      lgroup[name] = guides
    end

    counted_guides += guides.size
  end

  render "clickable_index", :lgroup => lgroup, :rgroup => rgroup
end

#code(&block) ⇒ Object



46
47
48
49
# File 'lib/guides/helpers.rb', line 46

def code(&block)
  c = capture(&block)
  (:code, c)
end

#guide(name, url, options = {}, &block) ⇒ Object



25
26
27
28
29
30
31
32
33
34
35
# File 'lib/guides/helpers.rb', line 25

def guide(name, url, options = {}, &block)
  link = (:a, :href => url) { name }
  result = (:dt, link)

  if options[:work_in_progress]
    result << (:dd, 'Work in progress', :class => 'work-in-progress')
  end

  result << (:dd, capture(&block))
  result
end