Merge pull request #10004 from mfo/add_missing_acl_on_instructeurs_self_management_enabled

secu(instructeurs/groupes_instructeurs): s'assure que seul les instructeurs d'une demarche ayant la gestion activé puisse acceder aux ecrans
This commit is contained in:
mfo 2024-02-16 06:37:45 +00:00 committed by GitHub
commit 3e9abd73e4
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 53 additions and 7 deletions

View file

@ -3,6 +3,8 @@ module Instructeurs
include UninterlacePngConcern
include GroupeInstructeursSignatureConcern
before_action :ensure_allowed!
ITEMS_PER_PAGE = 25
def index
@ -98,5 +100,15 @@ module Instructeurs
def instructeur_id
params[:instructeur][:id]
end
def ensure_allowed!
if !(current_administrateur&.owns?(procedure) || procedure.instructeurs_self_management_enabled?)
flash[:alert] = "Vous navez pas le droit de gérer les instructeurs de cette démarche"
redirect_to instructeur_procedure_path(procedure)
end
rescue ActiveRecord::RecordNotFound
flash[:alert] = "Vous navez pas accès à cette démarche"
redirect_to root_path
end
end
end