diff --git a/aleksis/apps/alsijil/models.py b/aleksis/apps/alsijil/models.py
index 848c6696161dbc04a847e6f0e9b42758d3a60ba5..bab91988cd74c1e6f36b910b301454c0aa8b72c5 100644
--- a/aleksis/apps/alsijil/models.py
+++ b/aleksis/apps/alsijil/models.py
@@ -171,24 +171,11 @@ class Documentation(CalendarEvent):
 
             doc = next(existing_documentations_event, None)
             if doc:
-                if (
-                    (incomplete and doc.topic)
-                    or (
-                        not request.user.has_perm(
-                            "alsijil.edit_participation_status_for_documentation_rule", doc
-                        )
-                        and not [
-                            d
-                            for d in doc.participations.all()
-                            if d.absence_reason and d.person_id == request.user.person.id
-                        ]
-                    )
-                    or (
-                        absences_exist
-                        and (
-                            not doc.participations.all()
-                            or not [d for d in doc.participations.all() if d.absence_reason]
-                        )
+                if (incomplete and doc.topic) or (
+                    absences_exist
+                    and (
+                        not doc.participations.all()
+                        or not [d for d in doc.participations.all() if d.absence_reason]
                     )
                 ):
                     continue
diff --git a/aleksis/apps/alsijil/schema/documentation.py b/aleksis/apps/alsijil/schema/documentation.py
index cdb2eaca122330f70bd75023a463f2dc1dc0e8e7..b833de336b2a2add64ac5f0e0cf6dd7fdd8ae0c5 100644
--- a/aleksis/apps/alsijil/schema/documentation.py
+++ b/aleksis/apps/alsijil/schema/documentation.py
@@ -108,7 +108,9 @@ class DocumentationType(PermissionsTypeMixin, DjangoFilterMixin, DjangoObjectTyp
             "alsijil.view_participation_status_for_documentation_rule", root
         ):
             if has_person(info.context.user):
-                return root.participations.filter(person=info.context.user.person)
+                return [
+                    p for p in root.participations.all() if p.person == info.context.user.person
+                ]
             return []
         return root.participations.all()