From 9b70c496fd62de9d7f7a3440837df7d026c8a2b1 Mon Sep 17 00:00:00 2001 From: Ron Lucke <lucke@elan-ev.de> Date: Fri, 2 Feb 2024 07:30:38 +0000 Subject: [PATCH] fix #2925 Closes #2925 Merge request studip/studip!2483 --- .../Courseware/StructuralElementsSharedIndex.php | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/lib/classes/JsonApi/Routes/Courseware/StructuralElementsSharedIndex.php b/lib/classes/JsonApi/Routes/Courseware/StructuralElementsSharedIndex.php index 0dc7c0d447c..1582fbfb18d 100644 --- a/lib/classes/JsonApi/Routes/Courseware/StructuralElementsSharedIndex.php +++ b/lib/classes/JsonApi/Routes/Courseware/StructuralElementsSharedIndex.php @@ -42,9 +42,9 @@ class StructuralElementsSharedIndex extends JsonApiController } list($offset, $limit) = $this->getOffsetAndLimit(); - $resources = []; + $elements = []; $contents = StructuralElement::findBySQL( - 'range_id != ? AND range_type = ? ORDER BY mkdate DESC', + 'range_id != ? AND range_type = ? ORDER BY mkdate ASC', [$user->id, 'user'] ); @@ -68,7 +68,15 @@ class StructuralElementsSharedIndex extends JsonApiController } if ($add_content) { - $resources[] = $content; + $elements[] = $content; + } + } + + $resources = []; + foreach ($elements as $element) { + $has_parent = array_column($elements, null, 'id')[$element->parent_id] ?? false; + if (!$has_parent) { + $resources[] = $element; } } -- GitLab