diff --git a/app/controllers/instructeurs/dossiers_controller.rb b/app/controllers/instructeurs/dossiers_controller.rb index be14a79b3..221697795 100644 --- a/app/controllers/instructeurs/dossiers_controller.rb +++ b/app/controllers/instructeurs/dossiers_controller.rb @@ -232,14 +232,20 @@ module Instructeurs def delete_dossier if dossier.termine? dossier.discard_and_keep_track!(current_instructeur, :instructeur_request) - flash.notice = 'Le dossier a bien été supprimé' + flash.notice = t('instructeurs.dossiers.deleted_by_instructeur') redirect_to instructeur_procedure_path(procedure) else - flash.alert = "Suppression impossible : le dossier n’est pas traité" + flash.alert = t('instructeurs.dossiers.impossible_deletion') redirect_back(fallback_location: instructeur_procedures_url) end end + def hide_dossier + dossier.update(hidden_by_instructeur_at: Time.zone.now) + flash.notice = t('instructeurs.dossiers.deleted_by_instructeur') + redirect_back(fallback_location: instructeur_procedures_url) + end + private def dossier diff --git a/app/views/instructeurs/procedures/_dossier_actions.html.haml b/app/views/instructeurs/procedures/_dossier_actions.html.haml index bc1f994c5..42b6bc110 100644 --- a/app/views/instructeurs/procedures/_dossier_actions.html.haml +++ b/app/views/instructeurs/procedures/_dossier_actions.html.haml @@ -23,10 +23,10 @@ Archiver le dossier %li.danger - = link_to supprimer_dossier_instructeur_dossier_path(procedure_id, dossier_id), method: :patch, data: { confirm: "Voulez vous vraiment supprimer le dossier #{dossier_id} ? Cette action est irréversible. \nNous vous suggérons de télécharger le dossier au format PDF au préalable." } do + = link_to hide_dossier_instructeur_dossier_path(procedure_id, dossier_id), method: :patch, data: { confirm: "Voulez vous vraiment supprimer le dossier #{dossier_id} ? Cette action est irréversible. \nNous vous suggérons de télécharger le dossier au format PDF au préalable." } do %span.icon.delete .dropdown-description - Supprimer le dossier + = t('views.instructeurs.dossiers.delete_dossier') - elsif Dossier::EN_CONSTRUCTION_OU_INSTRUCTION.include?(state) - if dossier_is_followed diff --git a/config/locales/en.yml b/config/locales/en.yml index a26db6af1..19faf01e7 100644 --- a/config/locales/en.yml +++ b/config/locales/en.yml @@ -135,6 +135,7 @@ en: instructeurs: dossiers: archived_dossier: "This file will be kept for an additional month" + delete_dossier: "Delete file" deleted_by_user: "File deleted by user" avis: introduction_file_explaination: "File attached to the request for advice" @@ -198,7 +199,6 @@ en: edit_dossier: "Edit the file" start_other_dossier: "Start an other file" delete_dossier: "Delete the file" - hide_dossier: "Delete from your screen" transfer_dossier: "Transfer the file" edit_draft: "Edit the draft" actions: "Actions" @@ -407,6 +407,10 @@ en: identity_saved: "Identity data is registred" attestation: no_longer_available: "The certificate is no longer available on this file." + instructeurs: + dossiers: + deleted_by_instructeur: "The folder has been deleted" + impossible_deletion: "Unable to delete : the folder is not processed" france_connect: particulier: password_confirmation: diff --git a/config/locales/fr.yml b/config/locales/fr.yml index 0f2b4b81c..4f61afc34 100644 --- a/config/locales/fr.yml +++ b/config/locales/fr.yml @@ -132,6 +132,7 @@ fr: instructeurs: dossiers: archived_dossier: "Le dossier sera conservé 1 mois supplémentaire" + delete_dossier: "Supprimer le dossier" deleted_by_user: "Dossier supprimé par l'usager" avis: introduction_file_explaination: "Fichier joint à la demande d’avis" @@ -195,7 +196,6 @@ fr: edit_dossier: "Modifier le dossier" start_other_dossier: "Commencer un autre dossier" delete_dossier: "Supprimer le dossier" - hide_dossier: "Supprimer de votre interface" transfer_dossier: "Transferer le dossier" edit_draft: "Modifier le brouillon" actions: "Actions" @@ -415,6 +415,10 @@ fr: identity_saved: "Identité enregistrée" attestation: no_longer_available: "L’attestation n'est plus disponible sur ce dossier." + instructeurs: + dossiers: + deleted_by_instructeur: "Le dossier a bien été supprimé de votre interface" + impossible_deletion: "Supression impossible : le dossier n'est pas traité" administrateurs: procedures: show: diff --git a/config/routes.rb b/config/routes.rb index 4f13636ff..b8c3d264c 100644 --- a/config/routes.rb +++ b/config/routes.rb @@ -377,6 +377,7 @@ Rails.application.routes.draw do patch 'unarchive' patch 'supprimer-dossier' => 'dossiers#delete_dossier' patch 'annotations' => 'dossiers#update_annotations' + patch 'hide_dossier' post 'commentaire' => 'dossiers#create_commentaire' post 'passer-en-instruction' => 'dossiers#passer_en_instruction' post 'repasser-en-construction' => 'dossiers#repasser_en_construction'