Class: ContentBlockTools::Presenters::BlockPresenters::Contact::TelephonePresenter

Inherits:
BasePresenter
  • Object
show all
Includes:
BlockLevelContactItem
Defined in:
lib/content_block_tools/presenters/block_presenters/contact/telephone_presenter.rb

Constant Summary

Constants included from BlockLevelContactItem

BlockLevelContactItem::BASE_TAG_TYPE

Constants inherited from BasePresenter

BasePresenter::BASE_TAG_TYPE

Instance Attribute Summary

Attributes inherited from BasePresenter

#item

Instance Method Summary collapse

Methods included from BlockLevelContactItem

#initialize, #wrapper

Methods inherited from BasePresenter

#initialize

Instance Method Details



47
48
49
50
51
52
53
54
55
56
# File 'lib/content_block_tools/presenters/block_presenters/contact/telephone_presenter.rb', line 47

def call_charges_link
  if item[:show_uk_call_charges] == "true"
    (:p) do
      concat (:a,
                         "Find out about call charges",
                         class: "govuk-link",
                         href: "https://www.gov.uk/call-charges")
    end
  end
end

#number_listObject



20
21
22
23
24
25
26
# File 'lib/content_block_tools/presenters/block_presenters/contact/telephone_presenter.rb', line 20

def number_list
  (:ul) do
    item[:telephone_numbers].each do |number|
      concat number_list_item(number)
    end
  end
end

#number_list_item(number) ⇒ Object



28
29
30
31
32
33
# File 'lib/content_block_tools/presenters/block_presenters/contact/telephone_presenter.rb', line 28

def number_list_item(number)
  (:li) do
    concat (:span, number[:label])
    concat (:span, number[:telephone_number], { class: "tel" })
  end
end

#opening_hours_listObject



35
36
37
38
39
40
41
# File 'lib/content_block_tools/presenters/block_presenters/contact/telephone_presenter.rb', line 35

def opening_hours_list
  (:ul) do
    item[:opening_hours].each do |item|
      concat opening_hours_list_item(item)
    end
  end
end

#opening_hours_list_item(item) ⇒ Object



43
44
45
# File 'lib/content_block_tools/presenters/block_presenters/contact/telephone_presenter.rb', line 43

def opening_hours_list_item(item)
  (:li, "#{item[:day_from]} to #{item[:day_to]}, #{item[:time_from]} to #{item[:time_to]}")
end

#renderObject



10
11
12
13
14
15
16
17
18
# File 'lib/content_block_tools/presenters/block_presenters/contact/telephone_presenter.rb', line 10

def render
  wrapper do
    (:div, class: "email-url-number") do
      concat number_list
      concat opening_hours_list if item[:opening_hours].present?
      concat call_charges_link
    end
  end
end