From 47aa3b7d4a0bec5f81caa6080c5bc807e563467f Mon Sep 17 00:00:00 2001 From: Kara Diaby Date: Tue, 21 May 2024 09:56:50 +0000 Subject: [PATCH] Affichage des zones directement dans le tableau et suppression du nombre d'administrateurs --- .../procedures/_detail.html.haml | 28 ++++----- .../procedures/_informations.html.haml | 4 +- .../administrateurs/procedures/all.html.haml | 4 +- app/views/layouts/all.html.haml | 57 ++++++++++--------- 4 files changed, 48 insertions(+), 45 deletions(-) diff --git a/app/views/administrateurs/procedures/_detail.html.haml b/app/views/administrateurs/procedures/_detail.html.haml index b2e89c4b7..798bb15a6 100644 --- a/app/views/administrateurs/procedures/_detail.html.haml +++ b/app/views/administrateurs/procedures/_detail.html.haml @@ -5,15 +5,23 @@ - params = show_detail ? {} : { show_detail: true } = button_to detail_admin_procedure_path(procedure["id"]), method: :post, params:, title:, class: [icon, "fr-icon--sm fr-mr-1w fr-mb-1w fr-text-action-high--blue-france fr-btn fr-btn--tertiary-no-outline" ] do = title - %td - if procedure.template - %p.fr-badge.fr-badge--info.fr-badge--sm= "Modèle DS" - %br + %p.fr-badge.fr-badge--info.fr-badge--sm= "Modèle" + %abbr{ title: APPLICATION_NAME }= acronymize(APPLICATION_NAME) = procedure.libelle %td= procedure.id %td= procedure.estimated_dossiers_count - %td= procedure.administrateurs.count + %td + - if procedure.respond_to?(:parsed_latest_zone_labels) + - procedure.parsed_latest_zone_labels.uniq.each do |zone_label| + %span.mb-2= zone_label + .mb-2 + - else + - procedure.zones.uniq.each do |zone| + %span= zone.current_label + .mb-1 + %td= t procedure.aasm_state, scope: 'activerecord.attributes.procedure.aasm_state' %td= l(procedure.published_at, format: :message_date_without_time) if procedure.published_at %td @@ -21,16 +29,10 @@ = link_to('Cloner', admin_procedure_clone_path(procedure.id, from_new_from_existing: true), 'data-method' => :put, class: 'fr-btn fr-btn--tertiary fr-btn--sm') - - - if show_detail %tr.procedure{ id: "procedure_detail_#{procedure.id}" } %td.fr-highlight--beige-gris-galet{ colspan: '8' } .fr-container - .fr-grid-row - .fr-col-6 - - procedure.zones.uniq.each do |zone| - = zone.label_at(procedure.published_or_created_at) - .fr-col-6 - - procedure.administrateurs.uniq.each do |admin| - = admin.email + .fr-col-6 + - procedure.administrateurs.uniq.each do |admin| + = admin.email diff --git a/app/views/administrateurs/procedures/_informations.html.haml b/app/views/administrateurs/procedures/_informations.html.haml index fbc56387d..a3d361a52 100644 --- a/app/views/administrateurs/procedures/_informations.html.haml +++ b/app/views/administrateurs/procedures/_informations.html.haml @@ -120,8 +120,8 @@ %use.fr-artwork-major{ href: image_path("pictograms/buildings/school.svg#artwork-major") } .fr-fieldset__element - = f.label :tags, 'Associez les tags à la démarche', class: 'fr-label' - %p.fr-hint-text Les tags sont des mots ou des expressions que vous attribuez aux démarches pour décrire leur contenu et pour les retrouver. Les tags sont partagés avec la communauté, ce qui vous permet de voir les tags attribués aux démarches créées par les autres administrateurs. + = f.label :tags, 'Associez des thématiques à la démarche', class: 'fr-label' + %p.fr-hint-text Par des mots ou des expressions que vous attribuez aux démarches pour décrire leur contenu et pour les retrouver. Les tags sont partagés avec la communauté, ce qui vous permet de voir les tags attribués aux démarches créées par les autres administrateurs. = hidden_field_tag 'procedure[tags]', JSON.generate(@procedure.tags) = react_component("ComboMultiple", id: "procedure_tags_combo", diff --git a/app/views/administrateurs/procedures/all.html.haml b/app/views/administrateurs/procedures/all.html.haml index 43069b757..224e59fc6 100644 --- a/app/views/administrateurs/procedures/all.html.haml +++ b/app/views/administrateurs/procedures/all.html.haml @@ -57,8 +57,8 @@ %th{ scope: 'col' } %th{ scope: 'col' } Démarche %th{ scope: 'col' } № - %th{ scope: 'col' } Dossiers - %th{ scope: 'col' } Administrateurs + %th{ scope: 'col' } Nombre de dossiers + %th{ scope: 'col' } Zones %th{ scope: 'col' } Statut %th{ scope: 'col' } Date %th{ scope: 'col' } Action diff --git a/app/views/layouts/all.html.haml b/app/views/layouts/all.html.haml index 2b785e13f..44d69dacf 100644 --- a/app/views/layouts/all.html.haml +++ b/app/views/layouts/all.html.haml @@ -1,6 +1,5 @@ - content_for(:main_navigation) do = render 'administrateurs/main_navigation' - - content_for :content do .fr-container %h1.fr-my-4w Toutes les démarches @@ -25,16 +24,16 @@ = link_to all_admin_procedures_path(zone_ids: current_administrateur.zones), { data: { turbo: 'false' } } do %span.fr-icon-arrow-go-back-line Réinitialiser %ul + %li.fr-py-2w.fr-pl-2w{ 'data-controller': "expand" } .fr-mb-1w %button{ 'data-action': 'expand#toggle' } %span.fr-icon-add-line.fr-icon--sm.fr-mr-1w.fr-text-action-high--blue-france{ 'aria-hidden': 'true', 'data-expand-target': 'icon' } - Mes zones - .fr-ml-1w{ 'data-expand-target': 'content' } - = f.collection_check_boxes :zone_ids, @filter.admin_zones, :id, :current_label, include_hidden: false do |b| - .fr-checkbox-group.fr-ml-2w.fr-py-1w - = b.check_box(checked: @filter.zone_filtered?(b.value)) - = b.label(class: 'fr-label') { b.text } + Démarches modèles + .fr-ml-1w.hidden{ 'data-expand-target': 'content' } + .fr-checkbox-group.fr-ml-2w.fr-py-1w + = f.check_box :template, class: 'fr-input' + = f.label :template, 'Modèle DS', class: 'fr-label' %li.fr-py-2w.fr-pl-2w{ 'data-controller': "expand" } .fr-mb-1w %button{ 'data-action': 'expand#toggle' } @@ -45,6 +44,16 @@ .fr-checkbox-group.fr-ml-2w.fr-py-1w = b.check_box(checked: @filter.zone_filtered?(b.value)) = b.label(class: 'fr-label') { b.text } + %li.fr-py-2w.fr-pl-2w{ 'data-controller': "expand" } + .fr-mb-1w + %button{ 'data-action': 'expand#toggle' } + %span.fr-icon-add-line.fr-icon--sm.fr-mr-1w.fr-text-action-high--blue-france{ 'aria-hidden': 'true', 'data-expand-target': 'icon' } + Mes zones + .fr-ml-1w.hidden{ 'data-expand-target': 'content' } + = f.collection_check_boxes :zone_ids, @filter.admin_zones, :id, :current_label, include_hidden: false do |b| + .fr-checkbox-group.fr-ml-2w.fr-py-1w + = b.check_box(checked: @filter.zone_filtered?(b.value)) + = b.label(class: 'fr-label') { b.text } %li.fr-py-2w.fr-pl-2w{ 'data-controller': "expand" } .fr-mb-1w %button{ 'data-action': 'expand#toggle' } @@ -65,6 +74,16 @@ { selected: @filter.service_departement, include_blank: ''}, id: "service_dep_select", class: 'fr-select' + %li.fr-py-2w.fr-pl-2w{ 'data-controller': "expand" } + .fr-mb-1w + %button{ 'data-action': 'expand#toggle' } + %span.fr-icon-add-line.fr-icon--sm.fr-mr-1w.fr-text-action-high--blue-france{ 'aria-hidden': 'true', 'data-expand-target': 'icon' } + Type d'usager + .fr-ml-1w.hidden{ 'data-expand-target': 'content' } + = f.collection_check_boxes :kind_usagers, ['individual', 'personne_morale'], :to_s, :to_s, include_hidden: false do |b| + .fr-checkbox-group.fr-ml-2w.fr-py-1w + = b.check_box(checked: @filter.kind_usager_filtered?(b.value)) + = b.label(class: 'fr-label') { t b.text, scope: 'activerecord.attributes.procedure.kind_usager' } %li.fr-py-2w{ 'data-controller': "expand" } .fr-mb-1w.fr-pl-2w %button{ 'data-action': 'click->expand#toggle' } @@ -86,39 +105,21 @@ = b.check_box(checked: @filter.status_filtered?(b.value)) = b.label(class: 'fr-label') { t b.text, scope: 'activerecord.attributes.procedure.aasm_state' } + %li.fr-py-2w.fr-pl-2w{ 'data-controller': "expand" } .fr-mb-1w %button{ 'data-action': 'expand#toggle' } %span.fr-icon-add-line.fr-icon--sm.fr-mr-1w.fr-text-action-high--blue-france{ 'aria-hidden': 'true', 'data-expand-target': 'icon' } - Type d'usager - .fr-ml-1w.hidden{ 'data-expand-target': 'content' } - = f.collection_check_boxes :kind_usagers, ['individual', 'personne_morale'], :to_s, :to_s, include_hidden: false do |b| - .fr-checkbox-group.fr-ml-2w.fr-py-1w - = b.check_box(checked: @filter.kind_usager_filtered?(b.value)) - = b.label(class: 'fr-label') { t b.text, scope: 'activerecord.attributes.procedure.kind_usager' } - %li.fr-py-2w.fr-pl-2w{ 'data-controller': "expand" } - .fr-mb-1w - %button{ 'data-action': 'expand#toggle' } - %span.fr-icon-add-line.fr-icon--sm.fr-mr-1w.fr-text-action-high--blue-france{ 'aria-hidden': 'true', 'data-expand-target': 'icon' } - Tags + Thématique .fr-ml-1w.hidden{ 'data-expand-target': 'content' } %div - = f.search_field :tags, placeholder: 'Choisissez un tag', list: 'tags_list', class: 'fr-input', data: { no_autosubmit: 'input', turbo_force: :server }, multiple: true + = f.search_field :tags, placeholder: 'Choisissez un thème', list: 'tags_list', class: 'fr-input', data: { no_autosubmit: 'input', turbo_force: :server }, multiple: true %datalist#tags_list - Procedure.tags.each do |tag| %option{ value: tag } - if @filter.tags.present? - @filter.tags.each do |tag| = f.hidden_field :tags, value: tag, multiple: true, id: "tag-#{tag.tr(' ', '_')}" - %li.fr-py-2w.fr-pl-2w{ 'data-controller': "expand" } - .fr-mb-1w - %button{ 'data-action': 'expand#toggle' } - %span.fr-icon-add-line.fr-icon--sm.fr-mr-1w.fr-text-action-high--blue-france{ 'aria-hidden': 'true', 'data-expand-target': 'icon' } - Démarches modèles - .fr-ml-1w.hidden{ 'data-expand-target': 'content' } - .fr-checkbox-group.fr-ml-2w.fr-py-1w - = f.check_box :template, class: 'fr-input' - = f.label :template, 'Modèle DS', class: 'fr-label' .fr-col-9 = yield(:results)