aboutsummaryrefslogtreecommitdiffstats
path: root/app
diff options
context:
space:
mode:
authorRobert2017-11-09 18:16:41 +0100
committerRobert2017-11-17 14:56:29 +0100
commit3fba11d14fb032802ea70240e4b204e93fe5a277 (patch)
tree49e1dfe5993a7bf9c8c863b79399e4e887eab753 /app
parent76d11c7f973867e305d6841f69c62c5fd37d65a7 (diff)
downloadchouette-core-3fba11d14fb032802ea70240e4b204e93fe5a277.tar.bz2
Refs: #4823@4h; Fixed Transport(Sub)mode validation bug
Diffstat (limited to 'app')
-rw-r--r--app/models/compliance_check_block.rb4
-rw-r--r--app/models/compliance_control_block.rb4
-rw-r--r--app/models/concerns/stif_transport_mode_enumerations.rb25
-rw-r--r--app/models/concerns/stif_transport_submode_enumerations.rb36
-rw-r--r--app/models/line_referential.rb2
-rw-r--r--app/views/compliance_check_sets/show.html.slim49
-rw-r--r--app/views/lines/_filters.html.slim4
7 files changed, 78 insertions, 46 deletions
diff --git a/app/models/compliance_check_block.rb b/app/models/compliance_check_block.rb
index eb4654756..05240b428 100644
--- a/app/models/compliance_check_block.rb
+++ b/app/models/compliance_check_block.rb
@@ -1,6 +1,6 @@
class ComplianceCheckBlock < ActiveRecord::Base
- extend StifTransportModeEnumerations
- extend StifTransportSubmodeEnumerations
+ include StifTransportModeEnumerations
+ include StifTransportSubmodeEnumerations
belongs_to :compliance_check_set
diff --git a/app/models/compliance_control_block.rb b/app/models/compliance_control_block.rb
index 5721c00f4..cfcdfd1a6 100644
--- a/app/models/compliance_control_block.rb
+++ b/app/models/compliance_control_block.rb
@@ -1,6 +1,6 @@
class ComplianceControlBlock < ActiveRecord::Base
- extend StifTransportModeEnumerations
- extend StifTransportSubmodeEnumerations
+ include StifTransportModeEnumerations
+ include StifTransportSubmodeEnumerations
belongs_to :compliance_control_set
has_many :compliance_controls, dependent: :destroy
diff --git a/app/models/concerns/stif_transport_mode_enumerations.rb b/app/models/concerns/stif_transport_mode_enumerations.rb
index c2d38c2c6..74621dfc5 100644
--- a/app/models/concerns/stif_transport_mode_enumerations.rb
+++ b/app/models/concerns/stif_transport_mode_enumerations.rb
@@ -1,19 +1,18 @@
module StifTransportModeEnumerations
extend ActiveSupport::Concern
- extend Enumerize
- extend self
- enumerize :transport_mode, in: %w(bus
- metro
- rail
- tram
- funicular)
-
- def transport_modes
- StifTransportModeEnumerations.transport_mode.values
+ class << self
+ def transport_modes
+ %w(bus metro rail tram funicular)
+ end
+ def sorted_transport_modes
+ transport_modes.sort_by{|m| I18n.t("enumerize.transport_mode.#{m}").parameterize }
+ end
end
-
- def sorted_transport_modes
- self.transport_modes.sort_by{|m| I18n.t("enumerize.transport_mode.#{m}").parameterize }
+
+ included do
+ extend Enumerize
+ enumerize :transport_mode, in: StifTransportModeEnumerations.transport_modes
end
+
end
diff --git a/app/models/concerns/stif_transport_submode_enumerations.rb b/app/models/concerns/stif_transport_submode_enumerations.rb
index cf314badd..eb3e56eac 100644
--- a/app/models/concerns/stif_transport_submode_enumerations.rb
+++ b/app/models/concerns/stif_transport_submode_enumerations.rb
@@ -1,24 +1,28 @@
module StifTransportSubmodeEnumerations
extend ActiveSupport::Concern
- extend Enumerize
- extend self
- enumerize :transport_submode, in: %w(demandAndResponseBus
- nightBus
- airportLinkBus
- highFrequencyBus
- expressBus
- railShuttle
- suburbanRailway
- regionalRail
- interregionalRail
-)
+ class << self
+ def transport_submodes
+ %w(
+ demandAndResponseBus
+ nightBus
+ airportLinkBus
+ highFrequencyBus
+ expressBus
+ railShuttle
+ suburbanRailway
+ regionalRail
+ interregionalRail)
+ end
- def transport_submodes
- StifTransportSubmodeEnumerations.transport_submode.values
+ def sorted_transport_submodes
+ transport_submodes.sort_by{|m| I18n.t("enumerize.transport_submode.#{m}").parameterize }
+ end
end
- def sorted_transport_submodes
- self.transport_submodes.sort_by{|m| I18n.t("enumerize.transport_submode.#{m}").parameterize }
+ included do
+ extend Enumerize
+ enumerize :transport_submode, in: StifTransportSubmodeEnumerations.transport_submodes
end
+
end
diff --git a/app/models/line_referential.rb b/app/models/line_referential.rb
index 8bc6adec3..7ab892b53 100644
--- a/app/models/line_referential.rb
+++ b/app/models/line_referential.rb
@@ -1,5 +1,5 @@
class LineReferential < ActiveRecord::Base
- extend StifTransportModeEnumerations
+ include StifTransportModeEnumerations
has_many :line_referential_memberships
has_many :organisations, through: :line_referential_memberships
diff --git a/app/views/compliance_check_sets/show.html.slim b/app/views/compliance_check_sets/show.html.slim
index 4052707da..d02adc6b8 100644
--- a/app/views/compliance_check_sets/show.html.slim
+++ b/app/views/compliance_check_sets/show.html.slim
@@ -17,15 +17,51 @@
h2
= render '/compliance_checks/filters'
- - if @direct_compliance_checks.try(:any?)
+ - if @direct_compliance_checks.try(:any?)
+ .row
+ .col-lg-12
+ h2
+ = transport_mode_text()
+ .row
+ .col-lg-12
+ .select_table
+ = table_builder_2 @direct_compliance_checks,
+ [ \
+ TableBuilderHelper::Column.new( \
+ key: :code, \
+ attribute: 'code' \
+ ), \
+ TableBuilderHelper::Column.new( \
+ key: :name, \
+ attribute: 'name', \
+ link_to: lambda do |compliance_check| \
+ compliance_check_path(compliance_check) \
+ end \
+ ), \
+ TableBuilderHelper::Column.new( \
+ key: :criticity, \
+ attribute: 'criticity' \
+ ), \
+ TableBuilderHelper::Column.new( \
+ key: :comment, \
+ attribute: 'comment' \
+ ), \
+ ],
+ sortable: true,
+ cls: 'table has-filter has-search',
+ model: ComplianceCheck
+
+ - @compliance_checks.each do |block, compliance_checks|
+
+ - if compliance_checks.try(:any?)
.row
.col-lg-12
h2
- = transport_mode_text()
+ = transport_mode_text(block)
.row
.col-lg-12
.select_table
- = table_builder_2 @direct_compliance_checks,
+ = table_builder_2 compliance_checks,
[ \
TableBuilderHelper::Column.new( \
key: :code, \
@@ -50,11 +86,4 @@
sortable: true,
cls: 'table has-filter has-search',
model: ComplianceCheck
-
- - @compliance_checks.each do |block, compliance_checks|
- - if compliance_checks.try(:any?)
- .row
- .col-lg-12
- h2
- = transport_mode_text(block)
diff --git a/app/views/lines/_filters.html.slim b/app/views/lines/_filters.html.slim
index 7662c41b5..58f8f2431 100644
--- a/app/views/lines/_filters.html.slim
+++ b/app/views/lines/_filters.html.slim
@@ -17,11 +17,11 @@
.form-group.togglable
= f.label Chouette::Line.human_attribute_name(:transport_mode), required: false, class: 'control-label'
- = f.input :transport_mode_eq_any, collection: Chouette::Line.sorted_transport_modes, as: :check_boxes, label: false, label_method: lambda{|l| ("<span>" + t("enumerize.transport_mode.#{l}") + "</span>").html_safe}, required: false, wrapper_html: { class: 'checkbox_list'}
+ = f.input :transport_mode_eq_any, collection: StifTransportModeEnumerations.sorted_transport_modes, as: :check_boxes, label: false, label_method: lambda{|l| ("<span>" + t("enumerize.transport_mode.#{l}") + "</span>").html_safe}, required: false, wrapper_html: { class: 'checkbox_list'}
.form-group.togglable
= f.label Chouette::Line.human_attribute_name(:transport_submode), required: false, class: 'control-label'
- = f.input :transport_submode_eq_any, collection: Chouette::Line.sorted_transport_submodes, as: :check_boxes, label: false, label_method: lambda{|l| ("<span>" + t("enumerize.transport_submode.#{l}") + "</span>").html_safe}, required: false, wrapper_html: { class: 'checkbox_list'}
+ = f.input :transport_submode_eq_any, collection: StifTransportSubmodeEnumerations.sorted_transport_submodes, as: :check_boxes, label: false, label_method: lambda{|l| ("<span>" + t("enumerize.transport_submode.#{l}") + "</span>").html_safe}, required: false, wrapper_html: { class: 'checkbox_list'}
.actions
= link_to 'Effacer', @workbench, class: 'btn btn-link'