remove routee? method
This commit is contained in:
parent
cdaaf09fd8
commit
aca2775874
17 changed files with 29 additions and 35 deletions
|
@ -1,7 +1,7 @@
|
||||||
.fr-col-6.fr-col-md-4.fr-col-lg-3
|
.fr-col-6.fr-col-md-4.fr-col-lg-3
|
||||||
= link_to admin_procedure_groupe_instructeurs_path(@procedure), id: 'groupe-instructeurs', class: 'fr-tile fr-enlarge-link' do
|
= link_to admin_procedure_groupe_instructeurs_path(@procedure), id: 'groupe-instructeurs', class: 'fr-tile fr-enlarge-link' do
|
||||||
.fr-tile__body.flex.justify-between
|
.fr-tile__body.flex.justify-between
|
||||||
- if @procedure.routee?
|
- if @procedure.routing_enabled?
|
||||||
%div
|
%div
|
||||||
%span.icon.accept
|
%span.icon.accept
|
||||||
%p.fr-tile-status-accept Validé
|
%p.fr-tile-status-accept Validé
|
||||||
|
@ -11,7 +11,7 @@
|
||||||
%p.fr-tile-status-todo À faire
|
%p.fr-tile-status-todo À faire
|
||||||
%div
|
%div
|
||||||
.line-count.fr-my-1w
|
.line-count.fr-my-1w
|
||||||
- if @procedure.routee?
|
- if @procedure.routing_enabled?
|
||||||
%p.fr-tag= @procedure.groupe_instructeurs.size
|
%p.fr-tag= @procedure.groupe_instructeurs.size
|
||||||
- else
|
- else
|
||||||
%p.fr-tag= @procedure.instructeurs.size
|
%p.fr-tag= @procedure.instructeurs.size
|
||||||
|
|
|
@ -128,7 +128,7 @@ module Administrateurs
|
||||||
create_instructeur(instructeur_email)
|
create_instructeur(instructeur_email)
|
||||||
end
|
end
|
||||||
|
|
||||||
if procedure.routee?
|
if procedure.routing_enabled?
|
||||||
instructeurs.each do |instructeur|
|
instructeurs.each do |instructeur|
|
||||||
groupe_instructeur.add(instructeur)
|
groupe_instructeur.add(instructeur)
|
||||||
end
|
end
|
||||||
|
@ -153,7 +153,7 @@ module Administrateurs
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
if procedure.routee?
|
if procedure.routing_enabled?
|
||||||
redirect_to admin_procedure_groupe_instructeur_path(procedure, groupe_instructeur)
|
redirect_to admin_procedure_groupe_instructeur_path(procedure, groupe_instructeur)
|
||||||
else
|
else
|
||||||
redirect_to admin_procedure_groupe_instructeurs_path(procedure)
|
redirect_to admin_procedure_groupe_instructeurs_path(procedure)
|
||||||
|
@ -165,7 +165,7 @@ module Administrateurs
|
||||||
flash[:alert] = "Suppression impossible : il doit y avoir au moins un instructeur dans le groupe"
|
flash[:alert] = "Suppression impossible : il doit y avoir au moins un instructeur dans le groupe"
|
||||||
else
|
else
|
||||||
instructeur = Instructeur.find(instructeur_id)
|
instructeur = Instructeur.find(instructeur_id)
|
||||||
if procedure.routee?
|
if procedure.routing_enabled?
|
||||||
if groupe_instructeur.remove(instructeur)
|
if groupe_instructeur.remove(instructeur)
|
||||||
flash[:notice] = "L’instructeur « #{instructeur.email} » a été retiré du groupe."
|
flash[:notice] = "L’instructeur « #{instructeur.email} » a été retiré du groupe."
|
||||||
GroupeInstructeurMailer
|
GroupeInstructeurMailer
|
||||||
|
@ -183,7 +183,7 @@ module Administrateurs
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
if procedure.routee?
|
if procedure.routing_enabled?
|
||||||
redirect_to admin_procedure_groupe_instructeur_path(procedure, groupe_instructeur)
|
redirect_to admin_procedure_groupe_instructeur_path(procedure, groupe_instructeur)
|
||||||
else
|
else
|
||||||
redirect_to admin_procedure_groupe_instructeurs_path(procedure)
|
redirect_to admin_procedure_groupe_instructeurs_path(procedure)
|
||||||
|
|
|
@ -432,7 +432,7 @@ module Users
|
||||||
end
|
end
|
||||||
|
|
||||||
def should_fill_groupe_instructeur?
|
def should_fill_groupe_instructeur?
|
||||||
!@dossier.procedure.routee? && @dossier.groupe_instructeur_id.nil?
|
!@dossier.procedure.routing_enabled? && @dossier.groupe_instructeur_id.nil?
|
||||||
end
|
end
|
||||||
|
|
||||||
def defaut_groupe_instructeur
|
def defaut_groupe_instructeur
|
||||||
|
|
|
@ -49,7 +49,7 @@ module ProcedureHelper
|
||||||
end
|
end
|
||||||
|
|
||||||
def can_manage_groupe_instructeurs?(procedure)
|
def can_manage_groupe_instructeurs?(procedure)
|
||||||
procedure.routee? && current_administrateur&.owns?(procedure)
|
procedure.routing_enabled? && current_administrateur&.owns?(procedure)
|
||||||
end
|
end
|
||||||
|
|
||||||
def can_send_groupe_message?(procedure)
|
def can_send_groupe_message?(procedure)
|
||||||
|
|
|
@ -196,7 +196,7 @@ module TagsSubstitutionConcern
|
||||||
end
|
end
|
||||||
|
|
||||||
routage_tags = []
|
routage_tags = []
|
||||||
if procedure.routee?
|
if procedure.routing_enabled?
|
||||||
routage_tags = ROUTAGE_TAGS
|
routage_tags = ROUTAGE_TAGS
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
|
@ -615,11 +615,11 @@ class Dossier < ApplicationRecord
|
||||||
end
|
end
|
||||||
|
|
||||||
def show_groupe_instructeur_details?
|
def show_groupe_instructeur_details?
|
||||||
procedure.routee? && groupe_instructeur.present? && (!procedure.feature_enabled?(:procedure_routage_api) || !defaut_groupe_instructeur?)
|
procedure.routing_enabled? && groupe_instructeur.present? && (!procedure.feature_enabled?(:procedure_routage_api) || !defaut_groupe_instructeur?)
|
||||||
end
|
end
|
||||||
|
|
||||||
def show_groupe_instructeur_selector?
|
def show_groupe_instructeur_selector?
|
||||||
procedure.routee? && !procedure.feature_enabled?(:procedure_routage_api)
|
procedure.routing_enabled? && !procedure.feature_enabled?(:procedure_routage_api)
|
||||||
end
|
end
|
||||||
|
|
||||||
def assign_to_groupe_instructeur(groupe_instructeur, author = nil)
|
def assign_to_groupe_instructeur(groupe_instructeur, author = nil)
|
||||||
|
@ -1085,7 +1085,7 @@ class Dossier < ApplicationRecord
|
||||||
['Instructeurs', followers_instructeurs.map(&:email).join(' ')]
|
['Instructeurs', followers_instructeurs.map(&:email).join(' ')]
|
||||||
]
|
]
|
||||||
|
|
||||||
if procedure.routee?
|
if procedure.routing_enabled?
|
||||||
columns << ['Groupe instructeur', groupe_instructeur.label]
|
columns << ['Groupe instructeur', groupe_instructeur.label]
|
||||||
end
|
end
|
||||||
columns + self.class.champs_for_export(champs + champs_private, types_de_champ)
|
columns + self.class.champs_for_export(champs + champs_private, types_de_champ)
|
||||||
|
|
|
@ -694,16 +694,12 @@ class Procedure < ApplicationRecord
|
||||||
revisions.size - 2
|
revisions.size - 2
|
||||||
end
|
end
|
||||||
|
|
||||||
def routee?
|
|
||||||
routing_enabled?
|
|
||||||
end
|
|
||||||
|
|
||||||
def instructeurs_self_management?
|
def instructeurs_self_management?
|
||||||
routee? || instructeurs_self_management_enabled?
|
routing_enabled? || instructeurs_self_management_enabled?
|
||||||
end
|
end
|
||||||
|
|
||||||
def defaut_groupe_instructeur_for_new_dossier
|
def defaut_groupe_instructeur_for_new_dossier
|
||||||
if !routee? || feature_enabled?(:procedure_routage_api)
|
if !routing_enabled? || feature_enabled?(:procedure_routage_api)
|
||||||
defaut_groupe_instructeur
|
defaut_groupe_instructeur
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
.card-title Affectation des instructeurs
|
.card-title Affectation des instructeurs
|
||||||
= form_for :instructeur, url: { action: :add_instructeur, id: groupe_instructeur.id }, html: { class: 'form' } do |f|
|
= form_for :instructeur, url: { action: :add_instructeur, id: groupe_instructeur.id }, html: { class: 'form' } do |f|
|
||||||
.instructeur-wrapper
|
.instructeur-wrapper
|
||||||
- if !procedure.routee?
|
- if !procedure.routing_enabled?
|
||||||
%p.notice Entrez les adresses email des instructeurs que vous souhaitez affecter à cette démarche
|
%p.notice Entrez les adresses email des instructeurs que vous souhaitez affecter à cette démarche
|
||||||
|
|
||||||
- if disabled_as_super_admin
|
- if disabled_as_super_admin
|
||||||
|
@ -31,7 +31,7 @@
|
||||||
%span.icon.person
|
%span.icon.person
|
||||||
#{instructeur.email}
|
#{instructeur.email}
|
||||||
|
|
||||||
- confirmation_message = procedure.routee? ? "Êtes-vous sûr de vouloir retirer l’instructeur « #{instructeur.email} » du groupe « #{groupe_instructeur.label} » ?" : "Êtes-vous sûr de vouloir retirer l’instructeur « #{instructeur.email} » de la démarche ?"
|
- confirmation_message = procedure.routing_enabled? ? "Êtes-vous sûr de vouloir retirer l’instructeur « #{instructeur.email} » du groupe « #{groupe_instructeur.label} » ?" : "Êtes-vous sûr de vouloir retirer l’instructeur « #{instructeur.email} » de la démarche ?"
|
||||||
%td.actions= button_to 'Retirer',
|
%td.actions= button_to 'Retirer',
|
||||||
{ action: :remove_instructeur, id: groupe_instructeur.id },
|
{ action: :remove_instructeur, id: groupe_instructeur.id },
|
||||||
{ method: :delete,
|
{ method: :delete,
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
- if @procedure.routee?
|
- if @procedure.routing_enabled?
|
||||||
= render partial: 'administrateurs/breadcrumbs',
|
= render partial: 'administrateurs/breadcrumbs',
|
||||||
locals: { steps: [[t('.procedures'), admin_procedures_path],
|
locals: { steps: [[t('.procedures'), admin_procedures_path],
|
||||||
[@procedure.libelle.truncate_words(10), admin_procedure_path(@procedure)],
|
[@procedure.libelle.truncate_words(10), admin_procedure_path(@procedure)],
|
||||||
|
@ -19,7 +19,7 @@
|
||||||
instructeurs: @instructeurs,
|
instructeurs: @instructeurs,
|
||||||
available_instructeur_emails: @available_instructeur_emails,
|
available_instructeur_emails: @available_instructeur_emails,
|
||||||
disabled_as_super_admin: administrateur_as_manager? }
|
disabled_as_super_admin: administrateur_as_manager? }
|
||||||
- if !@procedure.routee?
|
- if !@procedure.routing_enabled?
|
||||||
= render partial: 'administrateurs/groupe_instructeurs/instructeurs_self_management', locals: { procedure: @procedure }
|
= render partial: 'administrateurs/groupe_instructeurs/instructeurs_self_management', locals: { procedure: @procedure }
|
||||||
|
|
||||||
= render partial: 'administrateurs/groupe_instructeurs/routing', locals: { procedure: @procedure }
|
= render partial: 'administrateurs/groupe_instructeurs/routing', locals: { procedure: @procedure }
|
||||||
|
|
|
@ -26,7 +26,7 @@
|
||||||
|
|
||||||
.admin-procedures-list-row.actions.flex.justify-between
|
.admin-procedures-list-row.actions.flex.justify-between
|
||||||
%div
|
%div
|
||||||
- if procedure.routee?
|
- if procedure.routing_enabled?
|
||||||
%span.icon.person
|
%span.icon.person
|
||||||
%span.badge.baseline= procedure.groupe_instructeurs.count
|
%span.badge.baseline= procedure.groupe_instructeurs.count
|
||||||
- else
|
- else
|
||||||
|
@ -80,4 +80,3 @@
|
||||||
%span.icon.unarchive
|
%span.icon.unarchive
|
||||||
.dropdown-description
|
.dropdown-description
|
||||||
%h4= t('administrateurs.dropdown_actions.restore')
|
%h4= t('administrateurs.dropdown_actions.restore')
|
||||||
|
|
||||||
|
|
|
@ -14,7 +14,7 @@
|
||||||
%h2 Formulaire
|
%h2 Formulaire
|
||||||
|
|
||||||
- champs = @dossier.champs
|
- champs = @dossier.champs
|
||||||
- if champs.any? || @dossier.procedure.routee?
|
- if champs.any? || @dossier.procedure.routing_enabled?
|
||||||
= render partial: "shared/dossiers/champs", locals: { champs: champs, dossier: @dossier, demande_seen_at: nil, profile: 'instructeur' }
|
= render partial: "shared/dossiers/champs", locals: { champs: champs, dossier: @dossier, demande_seen_at: nil, profile: 'instructeur' }
|
||||||
|
|
||||||
%h2 Annotations privées
|
%h2 Annotations privées
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
- if @procedure.routee?
|
- if @procedure.routing_enabled?
|
||||||
- content_for(:title, "Instructeurs du groupe #{@groupe_instructeur.label}")
|
- content_for(:title, "Instructeurs du groupe #{@groupe_instructeur.label}")
|
||||||
|
|
||||||
= render partial: 'administrateurs/breadcrumbs',
|
= render partial: 'administrateurs/breadcrumbs',
|
||||||
|
@ -14,7 +14,7 @@
|
||||||
|
|
||||||
.container.groupe-instructeur
|
.container.groupe-instructeur
|
||||||
%h1
|
%h1
|
||||||
- if @procedure.routee?
|
- if @procedure.routing_enabled?
|
||||||
Groupe « #{@groupe_instructeur.label} »
|
Groupe « #{@groupe_instructeur.label} »
|
||||||
- else
|
- else
|
||||||
Démarche « #{@procedure.libelle} »
|
Démarche « #{@procedure.libelle} »
|
||||||
|
@ -38,7 +38,7 @@
|
||||||
- @instructeurs.each do |instructeur|
|
- @instructeurs.each do |instructeur|
|
||||||
%tr
|
%tr
|
||||||
%td= instructeur.email
|
%td= instructeur.email
|
||||||
- confirmation_message = @procedure.routee? ? "Êtes-vous sûr de vouloir retirer l’instructeur « #{instructeur.email} » du groupe « #{@groupe_instructeur.label} » ?" : "Êtes-vous sûr de vouloir retirer l’instructeur « #{instructeur.email} » de la démarche ?"
|
- confirmation_message = @procedure.routing_enabled? ? "Êtes-vous sûr de vouloir retirer l’instructeur « #{instructeur.email} » du groupe « #{@groupe_instructeur.label} » ?" : "Êtes-vous sûr de vouloir retirer l’instructeur « #{instructeur.email} » de la démarche ?"
|
||||||
%td.actions= button_to 'retirer',
|
%td.actions= button_to 'retirer',
|
||||||
{ action: :remove_instructeur },
|
{ action: :remove_instructeur },
|
||||||
{ method: :delete,
|
{ method: :delete,
|
||||||
|
|
|
@ -8,7 +8,7 @@
|
||||||
|
|
|
|
||||||
- if can_manage_groupe_instructeurs?(procedure)
|
- if can_manage_groupe_instructeurs?(procedure)
|
||||||
= link_to t('instructeurs.dossiers.header.banner.instructeurs'), admin_procedure_groupe_instructeurs_path(procedure), class: 'header-link'
|
= link_to t('instructeurs.dossiers.header.banner.instructeurs'), admin_procedure_groupe_instructeurs_path(procedure), class: 'header-link'
|
||||||
- elsif procedure.routee?
|
- elsif procedure.routing_enabled?
|
||||||
= link_to t('instructeurs.dossiers.header.banner.instructeurs'), instructeur_groupes_path(procedure), class: 'header-link'
|
= link_to t('instructeurs.dossiers.header.banner.instructeurs'), instructeur_groupes_path(procedure), class: 'header-link'
|
||||||
- else
|
- else
|
||||||
= link_to t('instructeurs.dossiers.header.banner.instructeurs'), instructeur_groupe_path(procedure, procedure.defaut_groupe_instructeur), class: 'header-link'
|
= link_to t('instructeurs.dossiers.header.banner.instructeurs'), instructeur_groupe_path(procedure, procedure.defaut_groupe_instructeur), class: 'header-link'
|
||||||
|
@ -16,4 +16,3 @@
|
||||||
- if can_send_groupe_message?(procedure)
|
- if can_send_groupe_message?(procedure)
|
||||||
|
|
|
|
||||||
= link_to t('instructeurs.dossiers.header.banner.contact_users'), email_usagers_instructeur_procedure_path(procedure), class: 'header-link'
|
= link_to t('instructeurs.dossiers.header.banner.contact_users'), email_usagers_instructeur_procedure_path(procedure), class: 'header-link'
|
||||||
|
|
||||||
|
|
|
@ -34,6 +34,6 @@
|
||||||
|
|
||||||
.tab-title= t('views.shared.dossiers.demande.form')
|
.tab-title= t('views.shared.dossiers.demande.form')
|
||||||
- champs = dossier.champs.includes(:type_de_champ)
|
- champs = dossier.champs.includes(:type_de_champ)
|
||||||
- if champs.any? || dossier.procedure.routee?
|
- if champs.any? || dossier.procedure.routing_enabled?
|
||||||
.card
|
.card
|
||||||
= render partial: "shared/dossiers/champs", locals: { champs: champs, dossier: dossier, demande_seen_at: demande_seen_at, profile: profile }
|
= render partial: "shared/dossiers/champs", locals: { champs: champs, dossier: dossier, demande_seen_at: demande_seen_at, profile: profile }
|
||||||
|
|
|
@ -276,7 +276,7 @@ describe Administrateurs::GroupeInstructeursController, type: :controller do
|
||||||
it { expect(gi_1_2.instructeurs.pluck(:email)).to include(*new_instructeur_emails) }
|
it { expect(gi_1_2.instructeurs.pluck(:email)).to include(*new_instructeur_emails) }
|
||||||
it { expect(flash.notice).to be_present }
|
it { expect(flash.notice).to be_present }
|
||||||
it { expect(response).to redirect_to(admin_procedure_groupe_instructeur_path(procedure, gi_1_2)) }
|
it { expect(response).to redirect_to(admin_procedure_groupe_instructeur_path(procedure, gi_1_2)) }
|
||||||
it { expect(procedure.routee?).to be_truthy }
|
it { expect(procedure.routing_enabled?).to be_truthy }
|
||||||
it "calls GroupeInstructeurMailer with the right groupe and instructeurs" do
|
it "calls GroupeInstructeurMailer with the right groupe and instructeurs" do
|
||||||
expect(GroupeInstructeurMailer).to have_received(:add_instructeurs).with(
|
expect(GroupeInstructeurMailer).to have_received(:add_instructeurs).with(
|
||||||
gi_1_2,
|
gi_1_2,
|
||||||
|
|
|
@ -4,7 +4,7 @@ FactoryBot.define do
|
||||||
state { Dossier.states.fetch(:brouillon) }
|
state { Dossier.states.fetch(:brouillon) }
|
||||||
|
|
||||||
user { association :user }
|
user { association :user }
|
||||||
groupe_instructeur { procedure.routee? ? nil : procedure.defaut_groupe_instructeur }
|
groupe_instructeur { procedure.routing_enabled? ? nil : procedure.defaut_groupe_instructeur }
|
||||||
revision { procedure.active_revision }
|
revision { procedure.active_revision }
|
||||||
individual { association(:individual, :empty, dossier: instance, strategy: :build) if procedure.for_individual? }
|
individual { association(:individual, :empty, dossier: instance, strategy: :build) if procedure.for_individual? }
|
||||||
|
|
||||||
|
|
|
@ -86,12 +86,12 @@ describe TagsSubstitutionConcern, type: :model do
|
||||||
procedure.reload
|
procedure.reload
|
||||||
end
|
end
|
||||||
|
|
||||||
it { expect(procedure.routee?).to eq(true) }
|
it { expect(procedure.routing_enabled?).to eq(true) }
|
||||||
it { is_expected.to eq(label) }
|
it { is_expected.to eq(label) }
|
||||||
end
|
end
|
||||||
|
|
||||||
context 'and the dossier has no groupe instructeur' do
|
context 'and the dossier has no groupe instructeur' do
|
||||||
it { expect(procedure.routee?).to eq(false) }
|
it { expect(procedure.routing_enabled?).to eq(false) }
|
||||||
it { is_expected.to eq('défaut') }
|
it { is_expected.to eq('défaut') }
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
Loading…
Reference in a new issue