31 protected \ILIAS\DI\Container
$dic;
57 if (!isset($this->positionRepo)) {
59 $this->positionRepo = $dic[
"repo.Positions"];
67 if (!isset($this->assignmentRepo)) {
69 $this->assignmentRepo = $dic[
"repo.UserAssignments"];
80 $this->with_superiors =
true;
90 $this->with_positions =
true;
103 if ($this->with_superiors ===
true) {
107 if ($this->with_positions ===
true) {
122 if (count($this->orgu_users) == 0) {
126 if ($this->with_superiors ===
true) {
130 return $this->orgu_users[0];
142 $empl_id_sup_ids = [];
143 while (
$data = $DIC->database()->fetchAssoc($st)) {
147 (
string)
$data[
'sup_login'],
148 (
string) $data[
'sup_email'],
149 (
string) $data[
'sup_second_email']
151 $org_unit_user->addSuperior($superior);
166 while (
$data = $DIC->database()->fetchAssoc($st)) {
167 $arr_email_sup[] =
$data[
'sup_email'];
170 return $arr_email_sup;
182 orgu_ua.orgu_id AS orgu_id, 183 orgu_ua.user_id AS empl_usr_id, 184 orgu_ua2.user_id as sup_usr_id, 185 superior.email as sup_email, 186 superior.second_email as sup_second_email, 187 superior.login as sup_login 189 il_orgu_ua as orgu_ua, 190 il_orgu_ua as orgu_ua2 191 inner join usr_data as superior on superior.usr_id = orgu_ua2.user_id 193 orgu_ua.orgu_id = orgu_ua2.orgu_id 194 and orgu_ua.user_id <> orgu_ua2.user_id 197 AND " . $DIC->database()->in(
'orgu_ua.user_id', $user_ids,
false,
'integer');
205 ->getByUsers($user_ids);
206 foreach ($assignments as $assignment) {
208 $org_unit_user->addPositions($this->
getPositionRepo()->getSingle($assignment->getPositionId(),
'id'));
220 $q =
"SELECT * FROM usr_data WHERE " . $this->dic->database()->in(
'usr_id', $user_ids,
false,
'int');
222 $set = $this->dic->database()->query(
$q);
224 while ($row = $this->dic->database()->fetchAssoc($set)) {
227 (
string) $row[
'login'],
228 (
string) $row[
'email'],
229 (
string) $row[
'second_email']
static getInstanceById(int $user_id)
Class ilOrgUnitUserRepository.
loadUsersByUserIds(array $user_ids)
__construct()
ilOrgUnitUserRepository constructor.
const CORE_POSITION_EMPLOYEE
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
ilOrgUnitPositionDBRepository $positionRepo
getOrgUnitUser(int $user_id)
loadSuperiors(array $user_ids)
ilOrgUnitUserAssignmentDBRepository $assignmentRepo
static getInstance(int $user_id, string $login, string $email, string $second_email)
getOrgUnitUsers(array $arr_user_id)
loadPositions(array $user_ids)
getSuperiorsSql(array $user_ids)
const CORE_POSITION_SUPERIOR
getEmailAdressesOfSuperiors(array $user_ids)