19 declare(strict_types=1);
42 return self::VALID_OBJECT_TYPES;
50 $objTypes = array_intersect($objTypes, self::VALID_OBJECT_TYPES);
51 if ($objTypes === []) {
55 $odObjTypes =
' AND ' . $this->db->in(
62 $res = $this->db->queryF(
69 WHEN (trans.title IS NOT NULL AND trans.title != '') 76 WHEN (trans.description IS NOT NULL AND trans.description != '') 77 THEN trans.description 86 WHEN od.type = 'crs' THEN crs_settings.period_start 87 ELSE grp_settings.period_start 92 WHEN od.type = 'crs' THEN crs_settings.period_end 93 ELSE grp_settings.period_end 98 WHEN od.type = 'crs' THEN crs_settings.period_time_indication 99 ELSE grp_settings.period_time_indication 103 INNER JOIN rbac_fa fa ON fa.rol_id = ua.rol_id AND fa.assign = %s 104 INNER JOIN object_reference objr ON objr.ref_id = fa.parent 105 INNER JOIN object_data od ON od.obj_id = objr.obj_id $odObjTypes 106 INNER JOIN tree t ON t.child = objr.ref_id AND t.tree = %s AND t.parent != %s 107 INNER JOIN tree tp ON tp.child = t.parent 108 LEFT JOIN grp_settings ON grp_settings.obj_id = od.obj_id 109 LEFT JOIN crs_settings ON crs_settings.obj_id = od.obj_id 110 LEFT JOIN object_translation trans ON trans.obj_id = od.obj_id AND trans.lang_code = %s 113 [
'text',
'integer',
'integer',
'text',
'integer'],
114 [
'y', 1, $this->recoveryFolderId, $actorLanguageCode, $user->
getId()]
117 while ($row = $this->db->fetchAssoc(
$res)) {
119 if (!is_null($row[
'period_start'])) {
123 if (!is_null($row[
'period_end'])) {
128 (
int) $row[
'ref_id'],
129 (
int) $row[
'obj_id'],
130 (
string) $row[
'type'],
131 (
string) $row[
'title'],
132 (
string) $row[
'description'],
133 (
int) $row[
'parent'],
134 (
int) $row[
'parent_lft'],
135 (
bool) $row[
'period_has_time'],
getForUser(ilObjUser $user, array $objTypes, string $actorLanguageCode)
__construct(ilDBInterface $db, int $recoveryFolderId)