aboutsummaryrefslogtreecommitdiffstats
path: root/app
diff options
context:
space:
mode:
authorteddywing2017-11-17 16:15:25 +0100
committerGitHub2017-11-17 16:15:25 +0100
commit0d80f302bbf90334671b954b6788d581d5c852cb (patch)
tree078d579ccb120d0f7d495b248175fc6cbc6b42f9 /app
parent3e4b615c6d40598f06a20957e3b48c0c516a8ce5 (diff)
parentb5536b6f8d7e5fbfe52d24e0b71bcc4984b87262 (diff)
downloadchouette-core-0d80f302bbf90334671b954b6788d581d5c852cb.tar.bz2
Merge pull request #113 from af83/4823-compliance_check_show
4823 compliance check show
Diffstat (limited to 'app')
-rw-r--r--app/controllers/compliance_check_sets_controller.rb31
-rw-r--r--app/controllers/compliance_checks_controller.rb2
-rw-r--r--app/controllers/compliance_control_sets_controller.rb21
-rw-r--r--app/decorators/compliance_check_decorator.rb8
-rw-r--r--app/helpers/compliance_check_blocks_helper.rb3
-rw-r--r--app/helpers/compliance_check_sets_helper.rb16
-rw-r--r--app/helpers/compliance_control_blocks_helper.rb2
-rw-r--r--app/helpers/transport_mode_helper.rb16
-rw-r--r--app/models/compliance_check_block.rb8
-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/models/organisation.rb1
-rw-r--r--app/views/compliance_check_sets/executed.html.slim84
-rw-r--r--app/views/compliance_check_sets/show.html.slim12
-rw-r--r--app/views/compliance_checks/_filters.html.slim47
-rw-r--r--app/views/compliance_control_sets/show.html.slim117
-rw-r--r--app/views/compliance_controls/_filters.html.slim3
-rw-r--r--app/views/lines/_filters.html.slim4
20 files changed, 332 insertions, 110 deletions
diff --git a/app/controllers/compliance_check_sets_controller.rb b/app/controllers/compliance_check_sets_controller.rb
index 95dcfbf05..175c22191 100644
--- a/app/controllers/compliance_check_sets_controller.rb
+++ b/app/controllers/compliance_check_sets_controller.rb
@@ -18,4 +18,35 @@ class ComplianceCheckSetsController < InheritedResources::Base
}
end
end
+
+ def executed
+ show! do |format|
+ # But now nobody is aware anymore that `format.html` passes a parameter into the block
+ format.html { executed_for_html }
+ end
+ end
+
+
+ private
+
+ # Action Implementation
+ # ---------------------
+
+ def executed_for_html
+ @q_checks_form = @compliance_check_set.compliance_checks.ransack(params[:q])
+ @compliance_check_set = @compliance_check_set.decorate
+ compliance_checks =
+ decorate_compliance_checks( @q_checks_form.result)
+ .group_by(&:compliance_check_block)
+ @direct_compliance_checks = compliance_checks.delete nil
+ @blocks_to_compliance_checks_map = compliance_checks
+ end
+
+ # Decoration
+ # ----------
+ def decorate_compliance_checks(compliance_checks)
+ ModelDecorator.decorate(
+ compliance_checks,
+ with: ComplianceCheckDecorator)
+ end
end
diff --git a/app/controllers/compliance_checks_controller.rb b/app/controllers/compliance_checks_controller.rb
index 07438cf99..81749e292 100644
--- a/app/controllers/compliance_checks_controller.rb
+++ b/app/controllers/compliance_checks_controller.rb
@@ -1,4 +1,4 @@
-class ComplianceChecksController < ChouetteController
+class ComplianceChecksController < InheritedResources::Base
end
diff --git a/app/controllers/compliance_control_sets_controller.rb b/app/controllers/compliance_control_sets_controller.rb
index 5c78d09e3..83a345c6f 100644
--- a/app/controllers/compliance_control_sets_controller.rb
+++ b/app/controllers/compliance_control_sets_controller.rb
@@ -17,17 +17,12 @@ class ComplianceControlSetsController < InheritedResources::Base
def show
show! do |format|
- format.html {
- @q_controls_form = @compliance_control_set.compliance_controls.ransack(params[:q])
- @compliance_control_set = @compliance_control_set.decorate
- @compliance_controls =
- decorate_compliance_controls( @q_controls_form.result)
- .group_by(&:compliance_control_block)
- @indirect_compliance_controls = @compliance_controls.delete nil
- }
+ # But now nobody is aware anymore that `format.html` passes a parameter into the block
+ format.html { show_for_html }
end
end
+
def clone
ComplianceControlSetCloner.new.copy(params[:id], current_organisation.id)
flash[:notice] = I18n.t("compliance_control_sets.errors.operation_in_progress")
@@ -59,4 +54,14 @@ class ComplianceControlSetsController < InheritedResources::Base
def compliance_control_set_params
params.require(:compliance_control_set).permit(:name, :id)
end
+
+ def show_for_html
+ @q_controls_form = @compliance_control_set.compliance_controls.ransack(params[:q])
+ @compliance_control_set = @compliance_control_set.decorate
+ compliance_controls =
+ decorate_compliance_controls( @q_controls_form.result)
+ .group_by(&:compliance_control_block)
+ @direct_compliance_controls = compliance_controls.delete nil
+ @blocks_to_compliance_controls_map = compliance_controls
+ end
end
diff --git a/app/decorators/compliance_check_decorator.rb b/app/decorators/compliance_check_decorator.rb
new file mode 100644
index 000000000..5431f5796
--- /dev/null
+++ b/app/decorators/compliance_check_decorator.rb
@@ -0,0 +1,8 @@
+class ComplianceCheckDecorator < Draper::Decorator
+ delegate_all
+
+ def action_links
+ []
+ end
+
+end
diff --git a/app/helpers/compliance_check_blocks_helper.rb b/app/helpers/compliance_check_blocks_helper.rb
new file mode 100644
index 000000000..b4d858b07
--- /dev/null
+++ b/app/helpers/compliance_check_blocks_helper.rb
@@ -0,0 +1,3 @@
+module ComplianceCheckBlocksHelper
+ include TransportModeHelper
+end
diff --git a/app/helpers/compliance_check_sets_helper.rb b/app/helpers/compliance_check_sets_helper.rb
new file mode 100644
index 000000000..fc7165fed
--- /dev/null
+++ b/app/helpers/compliance_check_sets_helper.rb
@@ -0,0 +1,16 @@
+module ComplianceCheckSetsHelper
+ def compliance_check_set_path(compliance_check_set)
+ workbench_compliance_check_set_path(compliance_check_set.workbench, compliance_check_set)
+ end
+
+ def executed_compliance_check_set_path(compliance_check_set)
+ executed_workbench_compliance_check_set_path(compliance_check_set.workbench, compliance_check_set)
+ end
+
+ def compliance_check_path(compliance_check)
+ workbench_compliance_check_set_compliance_check_path(
+ compliance_check.compliance_check_set.workbench,
+ compliance_check.compliance_check_set,
+ compliance_check)
+ end
+end
diff --git a/app/helpers/compliance_control_blocks_helper.rb b/app/helpers/compliance_control_blocks_helper.rb
index 311e6fb46..b53ac17ae 100644
--- a/app/helpers/compliance_control_blocks_helper.rb
+++ b/app/helpers/compliance_control_blocks_helper.rb
@@ -1,5 +1,5 @@
module ComplianceControlBlocksHelper
- def transport_mode(transport_mode, transport_submode)
+ def compliance_transport_mode(transport_mode, transport_submode)
return "[Tous les modes de transport]" if transport_mode == ""
if transport_submode == ""
"[" + t("enumerize.transport_mode.#{transport_mode}") + "]"
diff --git a/app/helpers/transport_mode_helper.rb b/app/helpers/transport_mode_helper.rb
new file mode 100644
index 000000000..7a486fc2d
--- /dev/null
+++ b/app/helpers/transport_mode_helper.rb
@@ -0,0 +1,16 @@
+module TransportModeHelper
+ def transport_mode_text(transport_modable=nil)
+ mode = transport_modable.try(:transport_mode)
+ return "[Tous les modes de transport]" if mode.blank?
+
+ submode = transport_modable.try(:transport_submode)
+ [translated_mode_name(:mode, mode), translated_mode_name(:submode, submode)].join
+ end
+
+ private
+ def translated_mode_name mode_type, value
+ return "" if value.blank?
+ "[#{I18n.t("enumerize.transport_#{mode_type}.#{value}")}]"
+ end
+
+end
diff --git a/app/models/compliance_check_block.rb b/app/models/compliance_check_block.rb
index ee60a8bb1..05240b428 100644
--- a/app/models/compliance_check_block.rb
+++ b/app/models/compliance_check_block.rb
@@ -1,5 +1,13 @@
class ComplianceCheckBlock < ActiveRecord::Base
+ include StifTransportModeEnumerations
+ include StifTransportSubmodeEnumerations
+
belongs_to :compliance_check_set
has_many :compliance_checks
+
+ hstore_accessor :condition_attributes,
+ transport_mode: :string,
+ transport_submode: :string
+
end
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/models/organisation.rb b/app/models/organisation.rb
index b0c0692da..f6fba2d67 100644
--- a/app/models/organisation.rb
+++ b/app/models/organisation.rb
@@ -55,6 +55,7 @@ class Organisation < ActiveRecord::Base
organisation_referential = referentials.find_by id: referential_id
return organisation_referential if organisation_referential
+ # TODO: Replace each with find
workbenches.each do |workbench|
workbench_referential = workbench.all_referentials.find_by id: referential_id
return workbench_referential if workbench_referential
diff --git a/app/views/compliance_check_sets/executed.html.slim b/app/views/compliance_check_sets/executed.html.slim
new file mode 100644
index 000000000..bb055272d
--- /dev/null
+++ b/app/views/compliance_check_sets/executed.html.slim
@@ -0,0 +1,84 @@
+- breadcrumb :compliance_check_set, @workbench, @compliance_check_set
+/ PageHeader
+= pageheader 'jeux-de-donnees',
+ t('compliance_check_sets.executed.title', name: @compliance_check_set.name)
+/ PageContent
+.page_content
+ .container-fluid
+ .row
+ .col-lg-6.col-md-6.col-sm-12.col-xs-12
+ = definition_list t('metadatas'),
+ ComplianceCheckSet.human_attribute_name(:name) => @compliance_check_set.name
+
+ - if params[:q].present? || @blocks_to_compliance_checks_map.any? || @direct_compliance_checks
+ .row
+ .col-lg-12
+ = render '/compliance_checks/filters'
+
+ - if @direct_compliance_checks.try(:any?)
+ .row
+ .col-lg-12
+ h2
+ = transport_mode_text()
+ .row
+ .col-lg-12
+ = 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
+
+ - @blocks_to_compliance_checks_map.each do |block, compliance_checks|
+
+ - if compliance_checks.try(:any?)
+ .row
+ .col-lg-12
+ h2
+ = transport_mode_text(block)
+ .row
+ .col-lg-12
+ = table_builder_2 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
diff --git a/app/views/compliance_check_sets/show.html.slim b/app/views/compliance_check_sets/show.html.slim
deleted file mode 100644
index eefa5363f..000000000
--- a/app/views/compliance_check_sets/show.html.slim
+++ /dev/null
@@ -1,12 +0,0 @@
-- breadcrumb :compliance_check_set, @workbench, @compliance_check_set
-/ PageHeader
-= pageheader 'jeux-de-donnees',
- @compliance_check_set.referential.name
-/ PageContent
-.page_content
- .container-fluid
- .row
- .col-lg-6.col-md-6.col-sm-12.col-xs-12
- = definition_list t('metadatas'),
- ComplianceCheckSet.human_attribute_name(:id) => @compliance_check_set.referential.id,
- ComplianceCheckSet.human_attribute_name(:name) => @compliance_check_set.referential.name
diff --git a/app/views/compliance_checks/_filters.html.slim b/app/views/compliance_checks/_filters.html.slim
new file mode 100644
index 000000000..0d747da27
--- /dev/null
+++ b/app/views/compliance_checks/_filters.html.slim
@@ -0,0 +1,47 @@
+/ Compliance Check Filter
+= search_form_for @q_checks_form,
+ url: executed_compliance_check_set_path(@compliance_check_set),
+ builder: SimpleForm::FormBuilder,
+ class: 'form form-filter' do |f|
+
+ .ffg-row
+ .input-group.search_bar
+ = f.search_field :name_cont,
+ class: 'form-control',
+ placeholder: t('compliance_checks.filters.name')
+ span.input-group-btn
+ button.btn.btn-default type='submit'
+ span.fa.fa-search
+
+ .ffg-row
+ .form-group.togglable#compliance_check_block-filter
+ = f.label t('activerecord.models.compliance_check_block.one'), required: false, class: 'control-label'
+ = f.input :compliance_check_block_id_eq_any,
+ collection: @compliance_check_set.compliance_check_blocks,
+ as: :check_boxes,
+ label: false,
+ label_method: lambda {|w| ("<span>#{transport_mode_text(w)}</span>").html_safe},
+ required: false,
+ wrapper_html: {class: 'checkbox_list'}
+ .form-group.togglable#subclass-filter
+ = f.label t('compliance_checks.filters.subclass'), required: false, class: 'control-label'
+ = f.input :origin_code_cont_any,
+ collection: subclass_selection_list,
+ as: :check_boxes,
+ label: false,
+ label_method: lambda {|w| ("<span>#{w.first}</span>").html_safe},
+ required: false,
+ wrapper_html: {class: 'checkbox_list'}
+ .form-group.togglable#severity-filter
+ = f.label t('compliance_checks.filters.criticity'), required: false, class: 'control-label'
+ = f.input :criticity_eq_any,
+ collection: ComplianceControl.criticities,
+ as: :check_boxes,
+ label: false,
+ label_method: lambda {|w| ("<span>#{w}</span>").html_safe},
+ required: false,
+ wrapper_html: {class: 'checkbox_list'}
+
+ .actions
+ = link_to t('actions.erase'), executed_compliance_check_set_path(@compliance_check_set), class: 'btn btn-link'
+ = f.submit t('actions.filter'), class: 'btn btn-default', id: 'compliance_check_set_compliance_checks_filter_btn'
diff --git a/app/views/compliance_control_sets/show.html.slim b/app/views/compliance_control_sets/show.html.slim
index 2bd663578..71b71f842 100644
--- a/app/views/compliance_control_sets/show.html.slim
+++ b/app/views/compliance_control_sets/show.html.slim
@@ -1,8 +1,7 @@
- breadcrumb :compliance_control_set, @compliance_control_set
/ PageHeader
= pageheader 'jeux-de-controle',
- t('compliance_control_sets.show.title', name: @compliance_control_set.name),
- 'Lorem ipsum dolor sit amet'
+ t('compliance_control_sets.show.title', name: @compliance_control_set.name)
/ Below is secondary actions & optional contents (filters, ...)
.row.mb-sm
@@ -25,21 +24,65 @@
= definition_list t('metadatas'),
ComplianceControlSet.human_attribute_name(:name) => @compliance_control_set.name,
I18n.t('activerecord.attributes.compliance_control_set.owner_jdc') => @compliance_control_set.organisation.name
- - if params[:q].present? or @compliance_controls.any?
+
+ - if params[:q].present? || @blocks_to_compliance_controls_map.any? || @direct_compliance_controls
.row
.col-lg-12
= render '/compliance_controls/filters'
- .row
- .col-lg-12
- h2
- = transport_mode("", "")
- - if @indirect_compliance_controls.try(:any?)
+ - if @direct_compliance_controls.try(:any?)
+ .row
+ .col-lg-12
+ h2
+ = transport_mode_text()
+ .row
+ .col-lg-12
+ .select_table
+ = table_builder_2 @direct_compliance_controls,
+ [ \
+ TableBuilderHelper::Column.new( \
+ key: :code, \
+ attribute: 'code' \
+ ), \
+ TableBuilderHelper::Column.new( \
+ key: :name, \
+ attribute: 'name', \
+ link_to: lambda do |compliance_control| \
+ compliance_control_set_compliance_control_path(@compliance_control_set, compliance_control) \
+ end \
+ ), \
+ TableBuilderHelper::Column.new( \
+ key: :criticity, \
+ attribute: 'criticity' \
+ ), \
+ TableBuilderHelper::Column.new( \
+ key: :comment, \
+ attribute: 'comment' \
+ ), \
+ ],
+ sortable: true,
+ cls: 'table has-filter has-search',
+ model: ComplianceControl
+
+ - @blocks_to_compliance_controls_map.each do |block, compliance_controls|
+
+ - if compliance_controls.try(:any?)
+ .row
+ .col-lg-12
+ h2
+ = transport_mode_text(block)
+ .btn-group
+ .btn.dropdown-toggle{ data-toggle="dropdown" }
+ .span.fa.fa-cog
+ ul.dropdown-menu
+ li
+ = link_to t('compliance_control_sets.actions.edit'), edit_compliance_control_set_compliance_control_block_path(@compliance_control_set.id, block.id)
+ = link_to t('compliance_control_sets.actions.destroy'), compliance_control_set_compliance_control_block_path(@compliance_control_set.id, block.id), :method => :delete, :data => {:confirm => t('compliance_control_sets.actions.destroy_confirm')}
.row
.col-lg-12
.select_table
- = table_builder_2 @indirect_compliance_controls,
+ = table_builder_2 compliance_controls,
[ \
TableBuilderHelper::Column.new( \
key: :code, \
@@ -65,47 +108,15 @@
cls: 'table has-filter has-search',
model: ComplianceControl
- - @compliance_controls.each do |block, compliance_controls|
-
- - if compliance_controls.try(:any?)
- .row
- .col-lg-12
- h2
- = transport_mode(block.transport_mode, block.transport_submode)
- .btn-group
- .btn.dropdown-toggle{ data-toggle="dropdown" }
- .span.fa.fa-cog
- ul.dropdown-menu
- li
- = link_to t('compliance_control_sets.actions.edit'), edit_compliance_control_set_compliance_control_block_path(@compliance_control_set.id, block.id) if policy(ComplianceControlBlock).update? if policy(ComplianceControlBlock).update?
- = link_to t('compliance_control_sets.actions.destroy'), compliance_control_set_compliance_control_block_path(@compliance_control_set.id, block.id), :method => :delete, :data => {:confirm => t('compliance_control_sets.actions.destroy_confirm')} if policy(ComplianceControlBlock).destroy?
- .row
- .col-lg-12
- .select_table
- = table_builder_2 compliance_controls,
- [ \
- TableBuilderHelper::Column.new( \
- key: :code, \
- attribute: 'code' \
- ), \
- TableBuilderHelper::Column.new( \
- key: :name, \
- attribute: 'name', \
- link_to: lambda do |compliance_control| \
- compliance_control_set_compliance_control_path(@compliance_control_set, compliance_control) \
- end \
- ), \
- TableBuilderHelper::Column.new( \
- key: :criticity, \
- attribute: 'criticity' \
- ), \
- TableBuilderHelper::Column.new( \
- key: :comment, \
- attribute: 'comment' \
- ), \
- ],
- sortable: true,
- cls: 'table has-filter has-search',
- model: ComplianceControl
-
- = flotted_links(@compliance_control_set.id) \ No newline at end of file
+ .select_toolbox
+ ul
+ li.st_action.with_text
+ = link_to select_type_compliance_control_set_compliance_controls_path(@compliance_control_set.id)
+ span.fa.fa-plus
+ span
+ = t('compliance_control_sets.actions.add_compliance_control')
+ li.st_action.with_text
+ = link_to new_compliance_control_set_compliance_control_block_path(@compliance_control_set.id)
+ span.fa.fa-plus
+ span
+ = t('compliance_control_sets.actions.add_compliance_control_block')
diff --git a/app/views/compliance_controls/_filters.html.slim b/app/views/compliance_controls/_filters.html.slim
index c729190a0..d38da5d2d 100644
--- a/app/views/compliance_controls/_filters.html.slim
+++ b/app/views/compliance_controls/_filters.html.slim
@@ -1,3 +1,4 @@
+/ Compliance Control Filter
= search_form_for @q_controls_form,
url: compliance_control_set_path(@compliance_control_set),
builder: SimpleForm::FormBuilder,
@@ -19,7 +20,7 @@
collection: @compliance_control_set.compliance_control_blocks,
as: :check_boxes,
label: false,
- label_method: lambda {|w| ("<span>#{transport_mode(w.transport_mode, w.transport_submode)}</span>").html_safe},
+ label_method: lambda {|w| ("<span>#{transport_mode_text(w)}</span>").html_safe},
required: false,
wrapper_html: {class: 'checkbox_list'}
.form-group.togglable#subclass-filter
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'