1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
|
module ApplicationHelper
include NewapplicationHelper
def array_to_html_list items
content_tag :ul do
items.each do |item|
concat content_tag :li, item
end
end
end
def page_header_title(object)
# Unwrap from decorator, we want to know the object model name
object = object.object if object.try(:object)
if Referential === object
return object.full_name
end
local = "#{object.model_name.name.underscore.pluralize}.#{params[:action]}.title"
arg = object.organisation.name if Workbench === object
if object.try(:name)
t(local, name: arg || object.name || object.id)
else
t(local)
end
end
def page_header_meta(object)
out = ""
display = true
display = policy(object).synchronize? if policy(object).respond_to?(:synchronize?) rescue false
if display
info = t('last_update', time: l(object.updated_at, format: :short))
if object.try(:has_metadata?)
author = object.metadata.modifier_username || t('default_whodunnit')
info = "#{info} <br/> #{t('whodunnit', author: author)}"
end
out += content_tag :div, info.html_safe, class: 'small last-update'
end
out.html_safe
end
def page_header_content_for(object)
content_for :page_header_title, page_header_title(object)
content_for :page_header_meta, page_header_meta(object)
end
def font_awesome_classic_tag(name)
name = "fa-file-text-o" if name == "fa-file-csv-o"
name = "fa-file-code-o" if name == "fa-file-xml-o"
content_tag(:i, nil, {class: "fa #{name}"})
end
def stop_area_picture_url(stop_area)
image_path("map/#{(stop_area.area_type || 'zdep').underscore}.png")
end
def selected_referential?
@referential.present? and not @referential.new_record?
end
def format_restriction_for_locales(referential)
if !referential.respond_to?(:data_format) or referential.data_format.blank?
""
else
"."+referential.data_format
end
end
def polymorphic_path_patch( source)
relative_url_root = Rails.application.config.relative_url_root
relative_url_root && !source.starts_with?("#{relative_url_root}/") ? "#{relative_url_root}#{source}" : source
end
def assets_path_patch( source)
relative_url_root = Rails.application.config.relative_url_root
return "/assets/#{source}" unless relative_url_root
"#{relative_url_root}/assets/#{source}"
end
def help_page?
controller_name == "help"
end
def help_path
path = request.env['PATH_INFO']
target = case
when path.include?("/help")
""
when path.include?("/networks")
"networks"
when path.include?("/companies")
"companies"
when path.include?("/group_of_lines")
"group_of_lines"
when path.include?("/vehicle_journeys")
"vehicle_journeys"
when path.include?("/vehicle_journey_frequencies")
"vehicle_journeys"
when path.include?("/journey_patterns")
"journey_patterns"
when path.include?("/routes")
"routes"
when path.include?("/lines")
"lines"
when path.include?("/access_points")
"access_points_links"
when path.include?("/access_links")
"access_points_links"
when path.include?("/stop_areas")
"stop_areas"
when path.include?("/time_tables")
"time_tables"
when path.include?("/exports")
"exports"
when path.include?("/compliance_check_tasks")
"validations"
when path.include?("/referentials")
"dataspaces"
else
""
end
url_for(:controller => "/help", :action => "show") + '/' + target
end
def permitted_custom_fields_params custom_fields
[{
custom_field_values: custom_fields.map(&:code)
}]
end
end
|