diff --git a/app/helpers/procedure_helper.rb b/app/helpers/procedure_helper.rb index 3e2f62b6e..7152824ba 100644 --- a/app/helpers/procedure_helper.rb +++ b/app/helpers/procedure_helper.rb @@ -66,4 +66,20 @@ module ProcedureHelper minutes = (seconds / 60.0).round [1, minutes].max end + + def admin_procedures_back_path(procedure) + statut = if procedure.discarded? + 'supprimees' + else + case procedure.aasm_state + when 'brouillon' + 'brouillons' + when 'close', 'depubliee' + 'archivees' + else + 'publiees' + end + end + admin_procedures_path(statut:) + end end diff --git a/app/views/administrateurs/procedures/annotations.html.haml b/app/views/administrateurs/procedures/annotations.html.haml index 1027ad34f..6221df5f9 100644 --- a/app/views/administrateurs/procedures/annotations.html.haml +++ b/app/views/administrateurs/procedures/annotations.html.haml @@ -1,5 +1,5 @@ = render partial: 'administrateurs/breadcrumbs', - locals: { steps: [['Démarches', admin_procedures_path], + locals: { steps: [['Démarches', admin_procedures_back_path(@procedure)], [@procedure.libelle.truncate_words(10), admin_procedure_path(@procedure)], ['Configuration des annotations privées']], preview: true } diff --git a/app/views/administrateurs/procedures/champs.html.haml b/app/views/administrateurs/procedures/champs.html.haml index 20dfb5dab..29c917af7 100644 --- a/app/views/administrateurs/procedures/champs.html.haml +++ b/app/views/administrateurs/procedures/champs.html.haml @@ -1,5 +1,5 @@ = render partial: 'administrateurs/breadcrumbs', - locals: { steps: [['Démarches', admin_procedures_path], + locals: { steps: [['Démarches', admin_procedures_back_path(@procedure)], [@procedure.libelle.truncate_words(10), admin_procedure_path(@procedure)], ['Configuration des champs']], preview: @procedure.draft_revision.valid? } diff --git a/app/views/administrateurs/procedures/close.html.haml b/app/views/administrateurs/procedures/close.html.haml index 57a608611..52ed9aaa2 100644 --- a/app/views/administrateurs/procedures/close.html.haml +++ b/app/views/administrateurs/procedures/close.html.haml @@ -1,5 +1,5 @@ = render partial: 'administrateurs/breadcrumbs', - locals: { steps: [['Démarches', admin_procedures_path], + locals: { steps: [['Démarches', admin_procedures_back_path(@procedure)], ["#{@procedure.libelle.truncate_words(10)} - archiver"]], metadatas: true } diff --git a/app/views/administrateurs/procedures/edit.html.haml b/app/views/administrateurs/procedures/edit.html.haml index e8ff47733..a46cdd144 100644 --- a/app/views/administrateurs/procedures/edit.html.haml +++ b/app/views/administrateurs/procedures/edit.html.haml @@ -1,7 +1,7 @@ - content_for(:root_class, 'scroll-margins-for-sticky-footer') = render partial: 'administrateurs/breadcrumbs', - locals: { steps: [['Démarches', admin_procedures_path], + locals: { steps: [['Démarches', admin_procedures_back_path(@procedure)], [@procedure.libelle.truncate_words(10), admin_procedure_path(@procedure)], ['Description']] } .procedure-form diff --git a/app/views/administrateurs/procedures/jeton.html.haml b/app/views/administrateurs/procedures/jeton.html.haml index 3e5bde7ee..7385ffdbd 100644 --- a/app/views/administrateurs/procedures/jeton.html.haml +++ b/app/views/administrateurs/procedures/jeton.html.haml @@ -1,5 +1,5 @@ = render partial: 'administrateurs/breadcrumbs', - locals: { steps: [['Démarches', admin_procedures_path], + locals: { steps: [['Démarches', admin_procedures_back_path(@procedure)], [@procedure.libelle.truncate_words(10), admin_procedure_path(@procedure)], ['Jeton']] } diff --git a/app/views/administrateurs/procedures/modifications.html.haml b/app/views/administrateurs/procedures/modifications.html.haml index 744be1b1a..a120dc50a 100644 --- a/app/views/administrateurs/procedures/modifications.html.haml +++ b/app/views/administrateurs/procedures/modifications.html.haml @@ -1,5 +1,5 @@ = render partial: 'administrateurs/breadcrumbs', - locals: { steps: [['Démarches', admin_procedures_path], + locals: { steps: [['Démarches', admin_procedures_back_path(@procedure)], [@procedure.libelle.truncate_words(10), admin_procedure_path(@procedure)], ['Modifications']] } .container diff --git a/app/views/administrateurs/procedures/monavis.html.haml b/app/views/administrateurs/procedures/monavis.html.haml index 6f42dc319..a48024209 100644 --- a/app/views/administrateurs/procedures/monavis.html.haml +++ b/app/views/administrateurs/procedures/monavis.html.haml @@ -1,5 +1,5 @@ = render partial: 'administrateurs/breadcrumbs', - locals: { steps: [['Démarches', admin_procedures_path], + locals: { steps: [['Démarches', admin_procedures_back_path(@procedure)], [@procedure.libelle.truncate_words(10), admin_procedure_path(@procedure)], ['MonAvis']] } diff --git a/app/views/administrateurs/procedures/new.html.haml b/app/views/administrateurs/procedures/new.html.haml index 68daee102..6fa4ee0c7 100644 --- a/app/views/administrateurs/procedures/new.html.haml +++ b/app/views/administrateurs/procedures/new.html.haml @@ -1,7 +1,7 @@ - content_for(:root_class, 'scroll-margins-for-sticky-footer') = render partial: 'administrateurs/breadcrumbs', - locals: { steps: [['Démarches', admin_procedures_path], + locals: { steps: [['Démarches', admin_procedures_back_path(@procedure)], ['Nouvelle']] } .procedure-form diff --git a/app/views/administrateurs/procedures/publication.html.haml b/app/views/administrateurs/procedures/publication.html.haml index 334e92c24..9efa4a883 100644 --- a/app/views/administrateurs/procedures/publication.html.haml +++ b/app/views/administrateurs/procedures/publication.html.haml @@ -1,6 +1,6 @@ = render partial: 'administrateurs/breadcrumbs', - locals: { steps: [['Démarches', admin_procedures_path], + locals: { steps: [['Démarches', admin_procedures_back_path(@procedure)], [@procedure.libelle.truncate_words(10), admin_procedure_path(@procedure)], ['Publication']] } .container diff --git a/app/views/administrateurs/procedures/show.html.haml b/app/views/administrateurs/procedures/show.html.haml index 5c2f673b4..66f218b2e 100644 --- a/app/views/administrateurs/procedures/show.html.haml +++ b/app/views/administrateurs/procedures/show.html.haml @@ -1,5 +1,5 @@ = render partial: 'administrateurs/breadcrumbs', - locals: { steps: [['Démarches', admin_procedures_path], + locals: { steps: [['Démarches', admin_procedures_back_path(@procedure)], ["#{@procedure.libelle.truncate_words(10)}"]], metadatas: true } diff --git a/app/views/administrateurs/procedures/transfert.html.haml b/app/views/administrateurs/procedures/transfert.html.haml index 8be1b1f8c..1ea1c1af2 100644 --- a/app/views/administrateurs/procedures/transfert.html.haml +++ b/app/views/administrateurs/procedures/transfert.html.haml @@ -1,5 +1,5 @@ = render partial: 'administrateurs/breadcrumbs', - locals: { steps: [['Démarches', admin_procedures_path], + locals: { steps: [['Démarches', admin_procedures_back_path(@procedure)], [@procedure.libelle.truncate_words(10), admin_procedure_path(@procedure)], ['Transfert']] } .container diff --git a/app/views/administrateurs/procedures/zones.html.haml b/app/views/administrateurs/procedures/zones.html.haml index 737825a6d..d854d5206 100644 --- a/app/views/administrateurs/procedures/zones.html.haml +++ b/app/views/administrateurs/procedures/zones.html.haml @@ -1,7 +1,7 @@ - content_for(:root_class, 'scroll-margins-for-sticky-footer') = render partial: 'administrateurs/breadcrumbs', - locals: { steps: [['Démarches', admin_procedures_path], + locals: { steps: [['Démarches', admin_procedures_back_path(@procedure)], [@procedure.libelle.truncate_words(10), admin_procedure_path(@procedure)], ['Description']] } .container