an admin can delete a groupe-instructeur with 0 dossier
This commit is contained in:
parent
a6287d5a01
commit
45c8c8ca21
3 changed files with 22 additions and 1 deletions
|
@ -48,6 +48,18 @@ module NewAdministrateur
|
|||
end
|
||||
end
|
||||
|
||||
def destroy
|
||||
if procedure.groupe_instructeurs.one?
|
||||
flash[:alert] = "Suppression impossible : il doit y avoir au moins un groupe instructeur sur chaque procédure"
|
||||
elsif groupe_instructeur == procedure.defaut_groupe_instructeur
|
||||
flash[:alert] = "Impossible de supprimer le groupe par défaut"
|
||||
else
|
||||
flash[:notice] = "le groupe « #{groupe_instructeur.label} » a été supprimé."
|
||||
groupe_instructeur.destroy
|
||||
end
|
||||
redirect_to procedure_groupe_instructeurs_path(procedure)
|
||||
end
|
||||
|
||||
def add_instructeur
|
||||
emails = params['emails'].presence || []
|
||||
emails = emails.map(&:strip).map(&:downcase)
|
||||
|
|
|
@ -34,5 +34,14 @@
|
|||
%tr
|
||||
%td= group.label
|
||||
%td.actions= link_to "voir", procedure_groupe_instructeur_path(@procedure, group)
|
||||
- if @groupes_instructeurs.count > 1
|
||||
- if group.dossiers.count == 0
|
||||
%td.actions
|
||||
- if group == @procedure.defaut_groupe_instructeur
|
||||
Groupe par défaut − ne peut être supprimé
|
||||
- else
|
||||
= link_to procedure_groupe_instructeur_path(@procedure, group), { method: :delete, class: 'button', data: { confirm: "Êtes-vous sûr de vouloir supprimer le groupe « #{group.label} » ?" }} do
|
||||
%span.icon.delete
|
||||
supprimer ce groupe
|
||||
|
||||
= paginate @groupes_instructeurs
|
||||
|
|
|
@ -356,7 +356,7 @@ Rails.application.routes.draw do
|
|||
get 'annotations'
|
||||
end
|
||||
|
||||
resources :groupe_instructeurs, only: [:index, :show, :create, :update] do
|
||||
resources :groupe_instructeurs, only: [:index, :show, :create, :update, :destroy] do
|
||||
member do
|
||||
post 'add_instructeur'
|
||||
delete 'remove_instructeur'
|
||||
|
|
Loading…
Reference in a new issue