Merge pull request #10768 from colinux/disable-admin-hide-instructeur-toggle
ETQ tech c'est finalement par le manager qui définit si le flag pour masquer l'email des instructeurs
This commit is contained in:
commit
b5c024cca5
6 changed files with 12 additions and 67 deletions
|
@ -15,17 +15,6 @@
|
|||
hint: "L’autogestion des instructeurs permet aux instructeurs de gérer eux-mêmes la liste des instructeurs de la démarche.#{ 'Nous recommandons de laisser l’autogestion des instructeurs activée.' if @procedure.routing_enabled? }",
|
||||
disabled: false)
|
||||
|
||||
%li
|
||||
= form_for @procedure,
|
||||
method: :patch,
|
||||
url: update_hide_instructeurs_email_admin_procedure_groupe_instructeurs_path(@procedure),
|
||||
data: { controller: 'autosubmit', turbo: 'true' } do |f|
|
||||
|
||||
= render Dsfr::ToggleComponent.new(form: f,
|
||||
target: :hide_instructeurs_email,
|
||||
title: "Anonymat des instructeurs",
|
||||
hint: "Permet de cacher l'adresse mail des instructeurs aux usagers lors de leurs interactions par le biais de la messagerie. Cette option est à activer pour les démarches sensibles.",
|
||||
disabled: false)
|
||||
%hr
|
||||
%p.fr-mt-2w Routage
|
||||
%p.fr-mt-2w= t('.routing_configuration_notice_1')
|
||||
|
|
|
@ -320,13 +320,6 @@ module Administrateurs
|
|||
notice: "L’autogestion des instructeurs est #{procedure.instructeurs_self_management_enabled? ? "activée" : "désactivée"}."
|
||||
end
|
||||
|
||||
def update_hide_instructeurs_email
|
||||
procedure.update!(hide_instructeurs_email_params)
|
||||
|
||||
redirect_to options_admin_procedure_groupe_instructeurs_path(procedure),
|
||||
notice: "L'anonymisation des instructeurs est #{procedure.hide_instructeurs_email? ? "activée" : "désactivée"}."
|
||||
end
|
||||
|
||||
def import
|
||||
if procedure.publiee_or_close?
|
||||
if !CSV_ACCEPTED_CONTENT_TYPES.include?(csv_file.content_type) && !CSV_ACCEPTED_CONTENT_TYPES.include?(marcel_content_type)
|
||||
|
|
|
@ -51,7 +51,8 @@ class ProcedureDashboard < Administrate::BaseDashboard
|
|||
for_tiers_enabled: Field::Boolean,
|
||||
replaced_by_procedure_id: Field::String,
|
||||
tags: Field::Text,
|
||||
template: Field::Boolean
|
||||
template: Field::Boolean,
|
||||
hide_instructeurs_email: Field::Boolean
|
||||
}.freeze
|
||||
|
||||
# COLLECTION_ATTRIBUTES
|
||||
|
@ -113,6 +114,7 @@ class ProcedureDashboard < Administrate::BaseDashboard
|
|||
:estimated_duration_visible,
|
||||
:piece_justificative_multiple,
|
||||
:for_tiers_enabled,
|
||||
:hide_instructeurs_email,
|
||||
:replaced_by_procedure_id
|
||||
].freeze
|
||||
|
||||
|
@ -126,6 +128,7 @@ class ProcedureDashboard < Administrate::BaseDashboard
|
|||
:estimated_duration_visible,
|
||||
:piece_justificative_multiple,
|
||||
:for_tiers_enabled,
|
||||
:hide_instructeurs_email,
|
||||
:replaced_by_procedure_id
|
||||
].freeze
|
||||
|
||||
|
|
|
@ -672,7 +672,6 @@ Rails.application.routes.draw do
|
|||
post 'create_simple_routing'
|
||||
delete 'destroy_all_groups_but_defaut'
|
||||
patch 'update_instructeurs_self_management_enabled'
|
||||
patch 'update_hide_instructeurs_email'
|
||||
post 'import'
|
||||
get 'export_groupe_instructeurs'
|
||||
end
|
||||
|
|
|
@ -14,30 +14,28 @@ namespace :after_party do
|
|||
total_gates = gates.count
|
||||
progress = ProgressReport.new(total_gates)
|
||||
|
||||
puts 'Collecte des démarches avec le feature flag'
|
||||
rake_puts 'Collecte des démarches avec le feature flag'
|
||||
|
||||
procedure_ids = gates.ids
|
||||
puts procedure_ids
|
||||
procedure_ids = gates.pluck(:value).map { _1.split(";").last.to_i }
|
||||
rake_puts procedure_ids.inspect
|
||||
|
||||
progress.finish
|
||||
|
||||
puts progress
|
||||
|
||||
puts "Mise à jour des #{procedure_ids.size} démarches"
|
||||
update_progress = ProgressReport.new(procedure_ids.size)
|
||||
|
||||
Procedure.where(id: procedure_ids).in_batches(of: 500) do |batch|
|
||||
# rubocop:disable DS/Unscoped
|
||||
Procedure.unscoped.where(id: procedure_ids).in_batches(of: 500) do |batch|
|
||||
batch.update_all(hide_instructeurs_email: true)
|
||||
update_progress.inc(batch.size)
|
||||
puts update_progress
|
||||
end
|
||||
# rubocop:enable DS/Unscoped
|
||||
|
||||
update_progress.finish
|
||||
puts update_progress
|
||||
|
||||
puts "Suppression du feature flag '#{feature_name}'"
|
||||
rake_puts "Suppression du feature flag '#{feature_name}'"
|
||||
Flipper.remove(feature_name)
|
||||
puts "Feature flag '#{feature_name}' supprimé avec succès"
|
||||
rake_puts "Feature flag '#{feature_name}' supprimé avec succès"
|
||||
|
||||
AfterParty::TaskRecord
|
||||
.create version: AfterParty::TaskRecorder.new(__FILE__).timestamp
|
||||
|
|
|
@ -995,41 +995,4 @@ describe Administrateurs::GroupeInstructeursController, type: :controller do
|
|||
expect(gi_1_1.signature).to be_attached
|
||||
end
|
||||
end
|
||||
|
||||
describe '#update_hide_instructeurs_email' do
|
||||
let(:administrateur) { administrateurs(:default_admin) }
|
||||
let(:procedure) { create(:procedure, administrateurs: [administrateur]) }
|
||||
|
||||
before do
|
||||
sign_in(administrateur.user)
|
||||
end
|
||||
|
||||
context 'when activating hide_instructeurs_email' do
|
||||
it 'updates the procedure and redirects with correct notice' do
|
||||
patch :update_hide_instructeurs_email, params: {
|
||||
procedure_id: procedure.id,
|
||||
procedure: { hide_instructeurs_email: "1" }
|
||||
}
|
||||
|
||||
expect(procedure.reload.hide_instructeurs_email).to be true
|
||||
expect(response).to redirect_to(options_admin_procedure_groupe_instructeurs_path(procedure))
|
||||
expect(flash[:notice]).to eq("L'anonymisation des instructeurs est activée.")
|
||||
end
|
||||
end
|
||||
|
||||
context 'when deactivating hide_instructeurs_email' do
|
||||
let(:procedure) { create(:procedure, hide_instructeurs_email: true, administrateurs: [administrateur]) }
|
||||
|
||||
it 'updates the procedure and redirects with correct notice' do
|
||||
patch :update_hide_instructeurs_email, params: {
|
||||
procedure_id: procedure.id,
|
||||
procedure: { hide_instructeurs_email: "0" }
|
||||
}
|
||||
|
||||
expect(procedure.reload.hide_instructeurs_email).to be false
|
||||
expect(response).to redirect_to(options_admin_procedure_groupe_instructeurs_path(procedure))
|
||||
expect(flash[:notice]).to eq("L'anonymisation des instructeurs est désactivée.")
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
Loading…
Reference in a new issue