/** * Renvoie les DroitGroupes liés à l'objet * @return DroitGroupeCollection */ public function getDroitGroupes() { if (is_null($this->cacheDroitGroupes)) { $this->cacheDroitGroupes = DroitGroupeBusiness::getByGroupe($this); $this->cacheDroitGroupes->store(); } return $this->cacheDroitGroupes; }
/** * Renvoie les Groupes liés à une collection de DroitGroupes * @param DroitGroupeCollection $droitGroupes * @return GroupeCollection */ public static function getFromDroitGroupes(DroitGroupeCollection $droitGroupes) { $ids = $droitGroupes->getIdGroupes(); if (!$ids) { return new GroupeCollection(); } $req = "SELECT * FROM groupe WHERE idGroupe IN (" . $ids . ");"; return DbHandler::collFromQuery($req, 'Groupe', 'GroupeCollection'); }
/** * Renvoie les Utilisateurs liés aux DroitGroupes de la collection fournie * @var DroitGroupeCollection $droitGroupes * @return UtilisateurCollection */ public static function getFromDroitGroupes(DroitGroupeCollection $droitGroupes) { $req = "SELECT * FROM utilisateur WHERE idGroupe IN (SELECT groupe.idGroupe FROM groupe WHERE groupe.idGroupe IN (" . $droitGroupes->getIdGroupes() . "))"; return DbHandler::collFromQuery($req, 'Utilisateur', 'UtilisateurCollection'); }