From 468c159b52a17b034e93ef6e1c161e834be1b5dc Mon Sep 17 00:00:00 2001 From: Lisa Durand Date: Tue, 29 Oct 2024 12:59:35 +0100 Subject: [PATCH] handle label color translation and class name --- app/assets/stylesheets/tags.scss | 12 ------------ .../administrateurs/procedure_labels_controller.rb | 2 +- app/helpers/dossier_helper.rb | 2 +- app/models/label.rb | 4 ++++ .../administrateurs/procedure_labels/_form.html.haml | 11 +++++------ config/locales/models/procedure_label/fr.yml | 11 +++++++++++ 6 files changed, 22 insertions(+), 20 deletions(-) diff --git a/app/assets/stylesheets/tags.scss b/app/assets/stylesheets/tags.scss index 5eda8aeeb..5d45bfb1e 100644 --- a/app/assets/stylesheets/tags.scss +++ b/app/assets/stylesheets/tags.scss @@ -28,15 +28,3 @@ $colors: "green-tilleul-verveine", color: var(--text-action-high-#{$color}); } } - -.grid-tags { - display: grid; - grid-template-columns: repeat(2, 1fr); -} - -@media (min-width: 62em) { - .grid-tags { - display: grid; - grid-template-columns: repeat(5, 1fr); - } -} diff --git a/app/controllers/administrateurs/procedure_labels_controller.rb b/app/controllers/administrateurs/procedure_labels_controller.rb index de1dc1721..b20ddad6c 100644 --- a/app/controllers/administrateurs/procedure_labels_controller.rb +++ b/app/controllers/administrateurs/procedure_labels_controller.rb @@ -56,7 +56,7 @@ module Administrateurs end def set_colors_collection - @colors_collection = ProcedureLabel.colors.values + @colors_collection = ProcedureLabel.colors.keys end end end diff --git a/app/helpers/dossier_helper.rb b/app/helpers/dossier_helper.rb index ba6a1004c..05d64e6f9 100644 --- a/app/helpers/dossier_helper.rb +++ b/app/helpers/dossier_helper.rb @@ -130,7 +130,7 @@ module DossierHelper end def tag_label(name, color) - tag.span(name, class: "fr-tag fr-tag--sm fr-tag--#{ProcedureLabel.colors.fetch(color.underscore)}") + tag.span(name, class: "fr-tag fr-tag--sm fr-tag--#{ProcedureLabel.class_name(color)}") end def demandeur_dossier(dossier) diff --git a/app/models/label.rb b/app/models/label.rb index 785507a80..ceaef10d1 100644 --- a/app/models/label.rb +++ b/app/models/label.rb @@ -28,4 +28,8 @@ class Label < ApplicationRecord validates :name, :color, presence: true validates :name, length: { maximum: NAME_MAX_LENGTH } + + def self.class_name(color) + ProcedureLabel.colors.fetch(color.underscore) + end end diff --git a/app/views/administrateurs/procedure_labels/_form.html.haml b/app/views/administrateurs/procedure_labels/_form.html.haml index 56d57b6ac..bb8983f39 100644 --- a/app/views/administrateurs/procedure_labels/_form.html.haml +++ b/app/views/administrateurs/procedure_labels/_form.html.haml @@ -6,11 +6,10 @@ = t('activerecord.attributes.procedure_label.color') = asterisk - .grid-tags - - @colors_collection.each do |color| - .fr-fieldset__element - .fr-radio-group - = f.radio_button :color, color, checked: (label.color == color.underscore) - = f.label :color, value: color, class: "fr-label fr-tag fr-tag--sm fr-tag--#{color}" + - @colors_collection.each do |color| + .fr-fieldset__element.fr-fieldset__element--inline + .fr-radio-group + = f.radio_button :color, color, checked: (label.color == color) + = f.label :color, t("activerecord.attributes.label/color.#{color}"), value: color, class: "fr-label fr-tag fr-tag--sm fr-tag--#{ProcedureLabel.class_name(color)}" = render Procedure::FixedFooterComponent.new(procedure: @procedure, form: f) diff --git a/config/locales/models/procedure_label/fr.yml b/config/locales/models/procedure_label/fr.yml index deabcbd8e..23e1ac877 100644 --- a/config/locales/models/procedure_label/fr.yml +++ b/config/locales/models/procedure_label/fr.yml @@ -4,3 +4,14 @@ fr: procedure_label: color: Couleur name: Nom + procedure_label/color: &color + green_tilleul_verveine: 'tilleul' + green_bourgeon: 'bourgeon' + green_emeraude: 'émeraude' + green_menthe: 'menthe' + blue_ecume: 'écume' + purple_glycine: 'glycine' + pink_macaron: 'macaron' + yellow_tournesol: 'tournesol' + brown_cafe_creme: 'café' + beige_gris_galet: 'galet'