Class: TokyoMetro::App::Renderer::Concerns::Header::Selection

Inherits:
MetaClass show all
Defined in:
lib/tokyo_metro/app/renderer/concerns/header/selection.rb

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(request, text_ja, text_en, domain_id_name, domain_class_name, *icon_names, icon_size: 2, additional_content: nil) ⇒ Selection

Returns a new instance of Selection.



3
4
5
6
7
8
9
10
11
12
13
14
15
16
# File 'lib/tokyo_metro/app/renderer/concerns/header/selection.rb', line 3

def initialize(
  request , text_ja , text_en , domain_id_name , domain_class_name , *icon_names ,
  icon_size: 2 ,
  additional_content: nil
)
  super(
    request , text_ja , text_en ,
    domain_id_name: domain_id_name ,
    domain_class_name: domain_class_name ,
    additional_content: additional_content
  )
  @icon_names = icon_names
  @icon_size = icon_size
end

Class Method Details

.railway_line(request) ⇒ Object



37
38
39
# File 'lib/tokyo_metro/app/renderer/concerns/header/selection.rb', line 37

def self.railway_line( request )
  self.new( request , "路線をえらぶ" , "Select railway line" , :select_railway_line , :selection_header , :railway_line )
end

.station_from_list(request) ⇒ Object



41
42
43
# File 'lib/tokyo_metro/app/renderer/concerns/header/selection.rb', line 41

def self.station_from_list( request )
  self.new( request , "駅一覧から駅をえらぶ" , "Select station from list" , :select_station_from_list , :selection_header , :list )
end

.station_from_railway_line(request) ⇒ Object



45
46
47
# File 'lib/tokyo_metro/app/renderer/concerns/header/selection.rb', line 45

def self.station_from_railway_line( request )
  self.new( request , "路線から駅をえらぶ" , "Select station from railway line" , :select_station_from_railway_line , :selection_header , :railway_line )
end

Instance Method Details

#renderObject



18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
# File 'lib/tokyo_metro/app/renderer/concerns/header/selection.rb', line 18

def render
  h.render inline: <<-HAML , type: :haml , locals: h_locals
%div{ id: domain_id_name , class: [ domain_class_name , :clearfix ].flatten }
- if icon_names.length > 1
  %div{ class: :icons }
    - icon_names.each do | icon_name |
      %div{ class: :icon }
        = ::TokyoMetro::App::Renderer::Icon.send( icon_name , request , icon_size ).render
- else
  %div{ class: :icon }
    = ::TokyoMetro::App::Renderer::Icon.send( icon_names.first , request , icon_size ).render
%div{ class: :text }
  %h3{ class: :text_ja }<
    = text_ja
  %h4{ class: :text_en }<
    = text_en
  HAML
end