diff --git a/aleksis/apps/chronos/util/chronos_helpers.py b/aleksis/apps/chronos/util/chronos_helpers.py
index 6c8600f9eeb7fe4d36c24bc2e2bf01cb69cbeb81..2bb9ae13c01e00008ad9451a913e2743014834a4 100644
--- a/aleksis/apps/chronos/util/chronos_helpers.py
+++ b/aleksis/apps/chronos/util/chronos_helpers.py
@@ -46,13 +46,13 @@ def get_groups(user: "User"):
     groups = groups.order_by("short_name", "name")
 
     if not check_global_permission(user, "chronos.view_all_group_timetables"):
-        if user.person.primary_group:
-            return groups.filter(pk=user.person.primary_group.pk)
-
         wanted_groups = get_objects_for_user(user, "core.view_group_timetable", groups)
 
         groups = groups.filter(
-            Q(pk__in=wanted_groups) | Q(members=user.person) | Q(owners=user.person)
+            Q(pk__in=wanted_groups)
+            | Q(members=user.person)
+            | Q(owners=user.person)
+            | Q(pk=user.person.primary_group.pk if user.person.primary_group else None)
         )
 
     groups = groups.distinct()