From 3404577ddfc93fe9ca3981bf6910c3682c422012 Mon Sep 17 00:00:00 2001 From: ggurdin Date: Mon, 15 Dec 2025 11:59:42 -0500 Subject: [PATCH] fix: on add course plan to space, set m.space.child power level to 0 --- .../courses/course_plan_room_extension.dart | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/lib/pangea/course_plans/courses/course_plan_room_extension.dart b/lib/pangea/course_plans/courses/course_plan_room_extension.dart index 1915e2792..6101fc31c 100644 --- a/lib/pangea/course_plans/courses/course_plan_room_extension.dart +++ b/lib/pangea/course_plans/courses/course_plan_room_extension.dart @@ -38,6 +38,23 @@ extension CoursePlanRoomExtension on Room { } Future addCourseToSpace(String courseId) async { + // Ensure students in course can launch activity rooms + final powerLevels = Map.from( + getState(EventTypes.RoomPowerLevels)?.content ?? {}, + ); + powerLevels['events'] ??= {}; + final events = Map.from(powerLevels['events']); + if (events["m.space.child"] != 0) { + events["m.space.child"] = 0; + powerLevels['events'] = events; + await client.setRoomStateWithKey( + id, + EventTypes.RoomPowerLevels, + '', + powerLevels, + ); + } + if (coursePlan?.uuid == courseId) return; final future = waitForRoomInSync(); await client.setRoomStateWithKey(