diff --git a/lib/classes/JsonApi/Routes/Courseware/CoursewareInstancesHelper.php b/lib/classes/JsonApi/Routes/Courseware/CoursewareInstancesHelper.php index e203fcdb1aa45ff4990ee1235c24a1d9a8597f3b..aff2916aaf0df14fc683bb6b7cee673b6a8665c3 100644 --- a/lib/classes/JsonApi/Routes/Courseware/CoursewareInstancesHelper.php +++ b/lib/classes/JsonApi/Routes/Courseware/CoursewareInstancesHelper.php @@ -32,6 +32,7 @@ trait CoursewareInstancesHelper if (!($method = $methods[$rangeType])) { throw new BadRequestException('Invalid range type: "' . $rangeType . '".'); } + $root = null; if ($rangeType !== 'sharedusers') { $chunks = explode('_', $rangeId); @@ -45,7 +46,9 @@ trait CoursewareInstancesHelper } else { $unit = Unit::findOneBySQL('range_id = ?', [$courseId]); } - $root = $unit->structural_element; + if ($unit) { + $root = $unit->structural_element; + } } else { $root = StructuralElement::$method($rangeId); } diff --git a/lib/models/Courseware/ContainerTypes/ContainerType.php b/lib/models/Courseware/ContainerTypes/ContainerType.php index 4b28b345875bacfaa8c6f1e2a45f98a4fdc470e3..dbe6df255b546369fcc50fab1a3e1c0d230e91e3 100644 --- a/lib/models/Courseware/ContainerTypes/ContainerType.php +++ b/lib/models/Courseware/ContainerTypes/ContainerType.php @@ -197,7 +197,7 @@ abstract class ContainerType foreach ($payload['sections'] as &$section) { foreach ($section['blocks'] as &$block) { - $block = $block_map[$block]; + $block = $block_map[$block] ?? null; } }