demarches-normaliennes/app/models/groupe_gestionnaire.rb

25 lines
629 B
Ruby
Raw Normal View History

class GroupeGestionnaire < ApplicationRecord
has_many :administrateurs
has_and_belongs_to_many :gestionnaires
2023-10-01 12:52:05 +02:00
has_ancestry
2023-08-29 19:08:27 +02:00
def add_gestionnaire(gestionnaire)
2023-08-29 19:08:27 +02:00
return if gestionnaire.nil?
return if in?(gestionnaire.groupe_gestionnaires)
gestionnaires << gestionnaire
end
def add_administrateur(administrateur)
return if administrateur.nil?
return if id == administrateur.groupe_gestionnaire_id
administrateurs << administrateur
end
def can_be_deleted?(current_user)
(gestionnaires.empty? || (gestionnaires == [current_user])) && administrateurs.empty? && children.empty?
end
end