Class: TokyoMetro::App::Renderer::StationFacility::Platform::Info::MetaClass::EachDirection
Instance Attribute Summary collapse
Instance Method Summary
collapse
Methods included from Common
#barrier_free_facility_infos, #car_composition_types, #has_barrier_free_facility_infos?, #has_one_car_composition_type?, #has_railway_direction_infos?, #has_surrounding_area_infos?, #has_transfer_infos?, #max_car_composition, #railway_line_css_class_name, #railway_line_name_en, #railway_line_name_ja, #surrounding_area_infos, #tab_name, #transfer_infos
Constructor Details
#initialize(request, platform_infos, railway_lines, railway_direction) ⇒ EachDirection
Returns a new instance of EachDirection.
3
4
5
6
7
8
|
# File 'lib/tokyo_metro/app/renderer/station_facility/platform/info/meta_class/each_direction.rb', line 3
def initialize( request , platform_infos , railway_lines , railway_direction )
super( request )
@platform_infos = platform_infos.sort_by( &:car_number )
set_railway_line( railway_lines )
@railway_direction = railway_direction
end
|
Instance Attribute Details
Returns the value of attribute platform_infos.
10
11
12
|
# File 'lib/tokyo_metro/app/renderer/station_facility/platform/info/meta_class/each_direction.rb', line 10
def platform_infos
@platform_infos
end
|
#railway_direction ⇒ Object
Returns the value of attribute railway_direction.
11
12
13
|
# File 'lib/tokyo_metro/app/renderer/station_facility/platform/info/meta_class/each_direction.rb', line 11
def railway_direction
@railway_direction
end
|
Instance Method Details
#render ⇒ Object
15
16
17
18
19
20
21
22
|
# File 'lib/tokyo_metro/app/renderer/station_facility/platform/info/meta_class/each_direction.rb', line 15
def render
if has_transfer_infos? or has_barrier_free_facility_infos? or has_surrounding_area_infos?
h.render inline: "= info.render_direction_info\n= info.render_infos_of_each_platform\n HAML\n end\nend\n" , type: :haml , locals: h_locals
|
#render_barrier_free_facility_infos ⇒ Object
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
|
# File 'lib/tokyo_metro/app/renderer/station_facility/platform/info/meta_class/each_direction.rb', line 79
def render_barrier_free_facility_infos
if has_barrier_free_facility_infos?
_barrier_free_facility_infos = barrier_free_facility_infos
hl = {
request: request ,
inside: _barrier_free_facility_infos.map { | infos_of_each_car | infos_of_each_car.select( &:inside? ) } ,
outside: _barrier_free_facility_infos.map { | infos_of_each_car | infos_of_each_car.select( &:outside? ) }
}
h.render inline: "- if inside.any?( &:present? )\n%tr{ class: :barrier_free_infos_inside }\n = ::StationFacilityPlatformInfoDecorator.render_inside_barrier_free_facility_title\n = ::TokyoMetro::App::Renderer::StationFacility::Platform::Info::MetaClass::TableRow::BarrierFreeFacilityInfos::Inside.new( request , inside ).render\n\n- if outside.any?( &:present? )\n%tr{ class: :barrier_free_infos_outside }\n = ::StationFacilityPlatformInfoDecorator.render_outside_barrier_free_facility_title\n = ::TokyoMetro::App::Renderer::StationFacility::Platform::Info::MetaClass::TableRow::BarrierFreeFacilityInfos::Outside.new( request , outside ).render\n HAML\n end\nend\n" , type: :haml , locals: hl
|
#render_car_number_array_if_one_car_composition_type ⇒ Object
55
56
57
58
59
60
61
62
63
|
# File 'lib/tokyo_metro/app/renderer/station_facility/platform/info/meta_class/each_direction.rb', line 55
def render_car_number_array_if_one_car_composition_type
h.render inline: "%tr{ class: [ info.railway_line_css_class_name , :car_numbers , :text_en ] }\n= ::StationFacilityPlatformInfoDecorator.render_an_empty_cell\n- ( 1..( info.max_car_composition ) ).each do | n |\n %td{ class: :car_number }<\n = n\n HAML\nend\n" , type: :haml , locals: h_locals
|
#render_direction_info ⇒ Object
24
25
26
27
28
29
30
31
32
33
34
35
|
# File 'lib/tokyo_metro/app/renderer/station_facility/platform/info/meta_class/each_direction.rb', line 24
def render_direction_info
if @railway_direction.present?
h.render inline: "%div{ class: :info_of_railway_direction }\n%div{ class: :title_of_direction }\n %h4{ class: :text_ja }<\n = railway_direction.station_info.decorate.render_name_ja( with_subname: true , suffix: \"\u65B9\u9762\u884C\u304D\u30DB\u30FC\u30E0\" )\n %h5{ class: :text_en }<\n = railway_direction.station_info.decorate.render_name_en( with_subname: true , prefix: \"Platform for \" )\n HAML\n end\nend\n" , type: :haml , locals: { railway_direction: @railway_direction }
|
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
|
# File 'lib/tokyo_metro/app/renderer/station_facility/platform/info/meta_class/each_direction.rb', line 37
def render_infos_of_each_platform
if has_one_car_composition_type?
h.render inline: "%table{ class: :platform_info }\n= this.render_car_number_array_if_one_car_composition_type\n- # \u4E57\u63DB\u8DEF\u7DDA\u304C\u3042\u308B\u5834\u5408\u306F\u3001\u4E57\u63DB\u306E\u60C5\u5831\u3092\u8A18\u8FF0\n= this.render_transfer_infos\n- # \u99C5\u69CB\u5185\u306E\u65BD\u8A2D\u304C\u3042\u308B\u5834\u5408\u306F\u3001\u99C5\u69CB\u5185\u306E\u65BD\u8A2D\u306E\u60C5\u5831\u3092\u8A18\u8FF0\n= this.render_barrier_free_facility_infos\n- # \u99C5\u5468\u8FBA\u306E\u60C5\u5831\u304C\u3042\u308B\u5834\u5408\u306F\u3001\u99C5\u5468\u8FBA\u306E\u60C5\u5831\u3092\u8A18\u8FF0\n= this.render_surrounding_area_infos\n HAML\n else\n # h.platform_infos_of_each_platform( @platform_infos , railway_line_css_class_name , car_composition_types , has_transfer_infos? , has_barrier_free_facility_infos? , has_surrounding_area_infos? )\n raise \"Error\"\n end\nend\n" , type: :haml , locals: { this: self }
|
#render_surrounding_area_infos ⇒ Object
102
103
104
105
106
107
108
109
110
111
112
113
114
|
# File 'lib/tokyo_metro/app/renderer/station_facility/platform/info/meta_class/each_direction.rb', line 102
def render_surrounding_area_infos
if has_surrounding_area_infos?
hl = {
request: request ,
surrounding_area_infos: surrounding_area_infos
}
h.render inline: "%tr{ class: :surrounding_areas }\n= ::StationFacilityPlatformInfoDecorator.render_surrounding_area_info_title\n= ::TokyoMetro::App::Renderer::StationFacility::Platform::Info::MetaClass::TableRow::SurroundingAreaInfos.new( request , surrounding_area_infos ).render\n HAML\n end\nend\n" , type: :haml , locals: hl
|
#render_transfer_infos ⇒ Object
65
66
67
68
69
70
71
72
73
74
75
76
77
|
# File 'lib/tokyo_metro/app/renderer/station_facility/platform/info/meta_class/each_direction.rb', line 65
def render_transfer_infos
if has_transfer_infos?
hl = {
request: request ,
transfer_infos: transfer_infos
}
h.render inline: "%tr{ class: :transfer_infos }\n= ::StationFacilityPlatformInfoDecorator.render_transfer_info_title\n= ::TokyoMetro::App::Renderer::StationFacility::Platform::Info::MetaClass::TableRow::TransferInfos.new( request , transfer_infos ).render\n HAML\n end\nend\n" , type: :haml , locals: hl
|