2024-04-29 00:17:15 +02:00
|
|
|
# frozen_string_literal: true
|
|
|
|
|
2019-08-06 11:02:54 +02:00
|
|
|
module Instructeurs
|
|
|
|
class InstructeurController < ApplicationController
|
|
|
|
before_action :authenticate_instructeur!
|
2018-02-12 16:26:56 +01:00
|
|
|
|
|
|
|
def nav_bar_profile
|
2019-08-06 11:02:54 +02:00
|
|
|
:instructeur
|
2018-02-12 16:26:56 +01:00
|
|
|
end
|
2022-07-21 15:18:07 +02:00
|
|
|
|
|
|
|
def ensure_not_super_admin!
|
2022-07-28 15:12:24 +02:00
|
|
|
if instructeur_as_manager?
|
2022-07-21 15:18:07 +02:00
|
|
|
redirect_back fallback_location: root_url, alert: "Interdit aux super admins", status: 403
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
2022-07-21 19:14:21 +02:00
|
|
|
private
|
|
|
|
|
2022-07-28 15:12:24 +02:00
|
|
|
def instructeur_as_manager?
|
2022-07-21 16:52:31 +02:00
|
|
|
procedure_id = params[:procedure_id]
|
|
|
|
|
2022-07-21 15:18:07 +02:00
|
|
|
current_instructeur.assign_to
|
2022-07-21 15:27:21 +02:00
|
|
|
.where(instructeur: current_instructeur,
|
2022-07-21 16:52:31 +02:00
|
|
|
groupe_instructeur: current_instructeur.groupe_instructeurs.where(procedure_id: procedure_id),
|
|
|
|
manager: true)
|
2022-07-21 15:27:21 +02:00
|
|
|
.count
|
|
|
|
.positive?
|
2022-07-21 15:18:07 +02:00
|
|
|
end
|
2017-06-29 15:29:48 +02:00
|
|
|
end
|
|
|
|
end
|