diff --git a/app/models/columns/linked_drop_down_column.rb b/app/models/columns/linked_drop_down_column.rb index 4530bf97f..f750c1fa8 100644 --- a/app/models/columns/linked_drop_down_column.rb +++ b/app/models/columns/linked_drop_down_column.rb @@ -3,7 +3,7 @@ class Columns::LinkedDropDownColumn < Columns::ChampColumn attr_reader :path - def initialize(procedure_id:, label:, stable_id:, tdc_type:, path:, displayable:, type: :text) + def initialize(procedure_id:, label:, stable_id:, tdc_type:, path:, options_for_select: [], displayable:, type: :text) @path = path super( @@ -12,7 +12,8 @@ class Columns::LinkedDropDownColumn < Columns::ChampColumn stable_id:, tdc_type:, displayable:, - type: + type:, + options_for_select: ) end diff --git a/app/models/type_de_champ.rb b/app/models/type_de_champ.rb index 50e170baa..d87836187 100644 --- a/app/models/type_de_champ.rb +++ b/app/models/type_de_champ.rb @@ -558,12 +558,6 @@ class TypeDeChamp < ApplicationRecord APIGeoService.departements.map { ["#{_1[:code]} – #{_1[:name]}", _1[:code]] } elsif region? APIGeoService.regions.map { [_1[:name], _1[:code]] } - elsif linked_drop_down_list? - if column.path == :primary - primary_options - else - secondary_options.values.flatten - end elsif choice_type? if drop_down_list? drop_down_options diff --git a/app/models/types_de_champ/linked_drop_down_list_type_de_champ.rb b/app/models/types_de_champ/linked_drop_down_list_type_de_champ.rb index c6396be6b..e15b86809 100644 --- a/app/models/types_de_champ/linked_drop_down_list_type_de_champ.rb +++ b/app/models/types_de_champ/linked_drop_down_list_type_de_champ.rb @@ -89,7 +89,8 @@ class TypesDeChamp::LinkedDropDownListTypeDeChamp < TypesDeChamp::TypeDeChampBas label: "#{libelle_with_prefix(prefix)} (Primaire)", type: :enum, path: :primary, - displayable: false + displayable: false, + options_for_select: primary_options ), Columns::LinkedDropDownColumn.new( procedure_id: procedure.id, @@ -98,7 +99,8 @@ class TypesDeChamp::LinkedDropDownListTypeDeChamp < TypesDeChamp::TypeDeChampBas label: "#{libelle_with_prefix(prefix)} (Secondaire)", type: :enum, path: :secondary, - displayable: false + displayable: false, + options_for_select: secondary_options.values.flatten.uniq.sort ) ] end