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:
commit
3e9abd73e4
2 changed files with 53 additions and 7 deletions
|
@ -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 n’avez 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 n’avez pas accès à cette démarche"
|
||||
redirect_to root_path
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue