From 4d4e633faa09ab61748f6c2b4a9ff7d9ac5b1ad7 Mon Sep 17 00:00:00 2001 From: Stephan Kergomard Date: Mon, 12 Jan 2026 07:54:36 +0100 Subject: [PATCH] Membership: Do Not Break on Unavailable ObjectType See: https://mantis.ilias.de/view.php?id=46776 --- .../classes/class.ilAttendanceList.php | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/components/ILIAS/Membership/classes/class.ilAttendanceList.php b/components/ILIAS/Membership/classes/class.ilAttendanceList.php index 5a59245fa8a8..60d4dffaecf6 100755 --- a/components/ILIAS/Membership/classes/class.ilAttendanceList.php +++ b/components/ILIAS/Membership/classes/class.ilAttendanceList.php @@ -136,11 +136,12 @@ protected function readOrderedExportableFields(): bool false ); } - // add udf fields - foreach ($this->profile->getVisibleUserDefinedFields( - Context::buildFromObjectType($this->parent_obj->getType()) - ) as $field) { + $object_type = Context::buildFromObjectType($this->parent_obj->getType()); + foreach ( + $object_type === null + ? $this->profile->getAllUserDefinedFields() + : $this->profile->getVisibleUserDefinedFields($object_type) as $field) { $this->presets['udf_' . $field->getIdentifier()] = array( $field->getLabel($this->lng), false @@ -222,9 +223,12 @@ public function getNonMemberUserData(array &$a_res): void } } - foreach ($this->profile->getVisibleUserDefinedFields( - Context::buildFromObjectType($this->parent_obj->getType()) - ) as $field) { + // add udf fields + $object_type = Context::buildFromObjectType($this->parent_obj->getType()); + foreach ( + $object_type === null + ? $this->profile->getAllUserDefinedFields() + : $this->profile->getVisibleUserDefinedFields($object_type) as $field) { $profile_data = $this->profile->getDataForMultiple($user_ids); foreach ($profile_data as $user_id => $field) { $a_res[$user_id]['udf_' . $field->getIdentifier()] = $profile_data->getAdditionalFieldByIdentifier(