Skip to content

Commit

Permalink
Merge pull request #11174 from demarches-simplifiees/feat/10790
Browse files Browse the repository at this point in the history
ETQ Instructeur, je veux acceder directement aux rubriques d'une démarche
  • Loading branch information
kara22 authored Jan 13, 2025
2 parents 36148b7 + 99ca64d commit b48040f
Show file tree
Hide file tree
Showing 5 changed files with 98 additions and 7 deletions.
10 changes: 10 additions & 0 deletions app/assets/stylesheets/dsfr.scss
Original file line number Diff line number Diff line change
Expand Up @@ -252,3 +252,13 @@ input[type='radio'] {
.fr-tag.no-wrap {
white-space: nowrap;
}

.fr-nav__btn.hide-chevron {
min-height: 2.5rem !important;
height: auto !important;
padding: 0.25rem 0.75rem !important;

&::after {
display: none !important;
}
}
86 changes: 79 additions & 7 deletions app/views/instructeurs/procedures/_list.html.haml
Original file line number Diff line number Diff line change
@@ -1,14 +1,86 @@

%li.list-style-type-none.fr-mb-3w

.procedure-details
.clipboard-container
.fr-mb-2w.fr-mt-2w
= badge = procedure_badge(p)
%h3{ class: class_names('font-weight-normal fr-link' => true, 'fr-ml-1v' => badge.present?) }
= link_to "#{p.libelle} - n°#{p.id}", instructeur_procedure_path(p)
.fr-mb-2w.fr-mt-2w.flex.align-center
%nav.fr-nav{ role: "navigation", "aria-label": "Menu de la procédure" }
%ul.fr-nav__list
%li.fr-nav__item.relative
%button.fr-nav__btn.fr-btn--tertiary.fr-h-5v.hide-chevron{ "aria-expanded": "false", "aria-controls": "mega-menu-#{p.id}" }
%span.fr-icon-menu-2-fill.fr-icon--sm.fr-mr-1w
Menu
.fr-collapse.fr-mega-menu{ id: "mega-menu-#{p.id}", tabindex: "-1" , style: "min-width: 350px" }
.fr-container.fr-container--fluid.fr-container-lg
%button.fr-btn--close.fr-btn.fr.fr-mb-3w{ "aria-controls": "mega-menu-#{p.id}" }
= t('instructeurs.procedures.index.close_button')
.fr-grid-row
.fr-col-12
.fr-mega-menu__leader
%h4.fr-h6= t('instructeurs.procedures.index.procedure_menu')
.fr-col-12
%h5.fr-mega-menu__category
= link_to t('instructeurs.dossiers.header.banner.follow_up'), instructeur_procedure_path(p), class: "fr-nav__link"
.fr-col-12
%ul.fr-mega-menu__list.fr-pb-0
%li.fr-nav__item
%button.fr-nav__btn.fr-mega-menu__category.flex.justify-between{ "aria-expanded": "false", "aria-controls": "procedure-management-#{p.id}", style: "height: 47px" }
= t('instructeurs.dossiers.header.banner.procedure_management')
.fr-collapse.width-100{ id: "procedure-management-#{p.id}" }
%ul.fr-menu__list.fr-mb-0
%li
= link_to t('instructeurs.dossiers.header.banner.administrators_list'), administrateurs_instructeur_procedure_path(p), class: 'fr-nav__link'

- if p.instructeurs_self_management_enabled?
%li
= link_to t('instructeurs.dossiers.header.banner.instructeurs'), instructeur_groupes_path(p), class: 'fr-nav__link'

- elsif current_administrateur && p.administrateurs_procedures.any? { _1.administrateur_id == current_administrateur.id }

%li
= link_to t('instructeurs.dossiers.header.banner.instructeurs'), admin_procedure_groupe_instructeurs_path(p), class: 'fr-nav__link'
%li
= link_to t('instructeurs.dossiers.header.banner.notification_management'), email_notifications_instructeur_procedure_path(p), class: 'fr-nav__link'
%li
= link_to t('instructeurs.dossiers.header.banner.statistics'), stats_instructeur_procedure_path(p), class: 'fr-nav__link'
%li
= link_to t('views.instructeurs.dossiers.show_deleted_dossiers'), deleted_dossiers_instructeur_procedure_path(p), class: 'fr-nav__link'
.fr-col-12
%ul.fr-mega-menu__list.fr-pb-0
%li.fr-nav__item
%button.fr-nav__btn.fr-mega-menu__category.flex.justify-between{ "aria-expanded": "false", "aria-controls": "user-support-#{p.id}", style: "height: 47px" }
= t('instructeurs.dossiers.header.banner.user_support')
.fr-collapse.width-100{ id: "user-support-#{p.id}" }
%ul.fr-menu__list.fr-mb-0
%li
= link_to t('instructeurs.dossiers.header.banner.contact_users'), email_usagers_instructeur_procedure_path(p), class: 'fr-nav__link'
%li
= link_to t('instructeurs.dossiers.header.banner.preview'), apercu_instructeur_procedure_path(p), target: "_blank", rel: "noopener", class: 'fr-nav__link'
%li
= link_to "#", class: "fr-nav__link fr-link fr-link--md fr-link--icon-left fr-icon-clipboard-line", data: {controller: "clipboard", clipboard_text_value: commencer_url(p.path), action: "click->clipboard#copy" } do
= t('instructeurs.dossiers.header.banner.copy_link_button')
.fr-col-12
%ul.fr-mega-menu__list.fr-pb-0
%li.fr-nav__item
%button.fr-nav__btn.fr-mega-menu__category.flex.justify-between{ "aria-expanded": "false", "aria-controls": "downloads-#{p.id}", style: "height: 47px" }
= t('instructeurs.dossiers.header.banner.downloads')
%span.relative{ class: class_names("fr-pr-1w" => @has_export_notification) }
- if @has_export_notification
%span.notifications{ 'aria-label': t('instructeurs.dossiers.header.banner.exports_notification_label') }
.fr-collapse.width-100{ id: "downloads-#{p.id}" }
%ul.fr-menu__list.fr-mb-0
%li
= link_to exports_instructeur_procedure_path(p), class: 'fr-nav__link' do
= t('instructeurs.dossiers.header.banner.exports_list')
- if @has_export_notification
%span.fr-ml-1v.notifications{ 'aria-label': t('instructeurs.dossiers.header.banner.exports_notification_label') }
%li
= link_to t('instructeurs.dossiers.header.banner.archives'), list_instructeur_archives_path(p), class: 'fr-nav__link'
%li
= link_to t('instructeurs.dossiers.header.banner.export_templates'), export_templates_instructeur_procedure_path(p), class: 'fr-nav__link'
= badge = procedure_badge(p)
%h3{ class: class_names('font-weight-normal fr-link fr-ml-3v' => true, 'fr-ml-1v' => badge.present?) }
= link_to "#{p.libelle} - n° #{p.id}", instructeur_procedure_path(p)

= render Dsfr::CopyButtonComponent.new(title: t('instructeurs.procedures.index.copy_link_button'), text: commencer_url(p.path))
= render Dsfr::CopyButtonComponent.new(title: t('instructeurs.procedures.index.copy_link_button'), text: commencer_url(p.path))

%ul.procedure-stats.flex.wrap.flex-gap-1
%li.fr-btn.fr-btn--tertiary.flex.justify-center.fr-enlarge-link.fr-mb-1w
Expand Down
2 changes: 2 additions & 0 deletions config/locales/views/instructeurs/procedures/en.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,8 @@ en:
procedures:
index:
copy_link_button: Copy the procedure link to clipboard
close_button: Close
procedure_menu: Procedure menu
show:
file_tracking: File tracking
email_usagers:
Expand Down
2 changes: 2 additions & 0 deletions config/locales/views/instructeurs/procedures/fr.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,8 @@ fr:
procedures:
index:
copy_link_button: Copier le lien de la démarche dans le presse-papiers
close_button: Fermer
procedure_menu: Menu de la démarche
show:
file_tracking: Suivi des dossiers
email_usagers:
Expand Down
5 changes: 5 additions & 0 deletions spec/views/instructeur/procedures/_list.html.haml_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,11 @@

describe 'instructeurs/procedures/_list', type: :view do
let(:procedure) { create(:procedure, id: 1, procedure_expires_when_termine_enabled: expiration_enabled) }
let(:current_administrateur) { create(:administrateur) }

before do
allow(view).to receive(:current_administrateur).and_return(current_administrateur)
end

subject do
render('instructeurs/procedures/list',
Expand Down

0 comments on commit b48040f

Please sign in to comment.