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? }",
|
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)
|
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
|
%hr
|
||||||
%p.fr-mt-2w Routage
|
%p.fr-mt-2w Routage
|
||||||
%p.fr-mt-2w= t('.routing_configuration_notice_1')
|
%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"}."
|
notice: "L’autogestion des instructeurs est #{procedure.instructeurs_self_management_enabled? ? "activée" : "désactivée"}."
|
||||||
end
|
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
|
def import
|
||||||
if procedure.publiee_or_close?
|
if procedure.publiee_or_close?
|
||||||
if !CSV_ACCEPTED_CONTENT_TYPES.include?(csv_file.content_type) && !CSV_ACCEPTED_CONTENT_TYPES.include?(marcel_content_type)
|
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,
|
for_tiers_enabled: Field::Boolean,
|
||||||
replaced_by_procedure_id: Field::String,
|
replaced_by_procedure_id: Field::String,
|
||||||
tags: Field::Text,
|
tags: Field::Text,
|
||||||
template: Field::Boolean
|
template: Field::Boolean,
|
||||||
|
hide_instructeurs_email: Field::Boolean
|
||||||
}.freeze
|
}.freeze
|
||||||
|
|
||||||
# COLLECTION_ATTRIBUTES
|
# COLLECTION_ATTRIBUTES
|
||||||
|
@ -113,6 +114,7 @@ class ProcedureDashboard < Administrate::BaseDashboard
|
||||||
:estimated_duration_visible,
|
:estimated_duration_visible,
|
||||||
:piece_justificative_multiple,
|
:piece_justificative_multiple,
|
||||||
:for_tiers_enabled,
|
:for_tiers_enabled,
|
||||||
|
:hide_instructeurs_email,
|
||||||
:replaced_by_procedure_id
|
:replaced_by_procedure_id
|
||||||
].freeze
|
].freeze
|
||||||
|
|
||||||
|
@ -126,6 +128,7 @@ class ProcedureDashboard < Administrate::BaseDashboard
|
||||||
:estimated_duration_visible,
|
:estimated_duration_visible,
|
||||||
:piece_justificative_multiple,
|
:piece_justificative_multiple,
|
||||||
:for_tiers_enabled,
|
:for_tiers_enabled,
|
||||||
|
:hide_instructeurs_email,
|
||||||
:replaced_by_procedure_id
|
:replaced_by_procedure_id
|
||||||
].freeze
|
].freeze
|
||||||
|
|
||||||
|
|
|
@ -672,7 +672,6 @@ Rails.application.routes.draw do
|
||||||
post 'create_simple_routing'
|
post 'create_simple_routing'
|
||||||
delete 'destroy_all_groups_but_defaut'
|
delete 'destroy_all_groups_but_defaut'
|
||||||
patch 'update_instructeurs_self_management_enabled'
|
patch 'update_instructeurs_self_management_enabled'
|
||||||
patch 'update_hide_instructeurs_email'
|
|
||||||
post 'import'
|
post 'import'
|
||||||
get 'export_groupe_instructeurs'
|
get 'export_groupe_instructeurs'
|
||||||
end
|
end
|
||||||
|
|
|
@ -14,30 +14,28 @@ namespace :after_party do
|
||||||
total_gates = gates.count
|
total_gates = gates.count
|
||||||
progress = ProgressReport.new(total_gates)
|
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
|
procedure_ids = gates.pluck(:value).map { _1.split(";").last.to_i }
|
||||||
puts procedure_ids
|
rake_puts procedure_ids.inspect
|
||||||
|
|
||||||
progress.finish
|
progress.finish
|
||||||
|
|
||||||
puts progress
|
|
||||||
|
|
||||||
puts "Mise à jour des #{procedure_ids.size} démarches"
|
puts "Mise à jour des #{procedure_ids.size} démarches"
|
||||||
update_progress = ProgressReport.new(procedure_ids.size)
|
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)
|
batch.update_all(hide_instructeurs_email: true)
|
||||||
update_progress.inc(batch.size)
|
update_progress.inc(batch.size)
|
||||||
puts update_progress
|
|
||||||
end
|
end
|
||||||
|
# rubocop:enable DS/Unscoped
|
||||||
|
|
||||||
update_progress.finish
|
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)
|
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
|
AfterParty::TaskRecord
|
||||||
.create version: AfterParty::TaskRecorder.new(__FILE__).timestamp
|
.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
|
expect(gi_1_1.signature).to be_attached
|
||||||
end
|
end
|
||||||
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
|
end
|
||||||
|
|
Loading…
Add table
Reference in a new issue