diff --git a/aleksis/apps/alsijil/frontend/components/coursebook/absences/ManageStudentsDialog.vue b/aleksis/apps/alsijil/frontend/components/coursebook/absences/ManageStudentsDialog.vue
index 798acb62384affe21627c39a23a14501181a7913..aa3bdb39179afb4a43e2f3df99fdc70330932b41 100644
--- a/aleksis/apps/alsijil/frontend/components/coursebook/absences/ManageStudentsDialog.vue
+++ b/aleksis/apps/alsijil/frontend/components/coursebook/absences/ManageStudentsDialog.vue
@@ -44,29 +44,29 @@ export default {
     },
   },
   methods: {
-    sendToServer(participation, field, value) {
+    sendToServer(participations, field, value) {
       if (field !== "absenceReason") return;
 
       this.mutate(
         updateParticipationStatuses,
         {
-          input: [
-            {
-              id: participation.id,
-              absenceReason: value === "present" ? null : value,
-            },
-          ],
+          input: participations.map((participation) => ({
+            id: participation.id,
+            absenceReason: value === "present" ? null : value,
+          })),
         },
         (storedDocumentations, incomingStatuses) => {
-          const newStatus = incomingStatuses[0];
           const documentation = storedDocumentations.find(
-            (doc) => doc.id === newStatus.relatedDocumentation.id,
+            (doc) => doc.id === this.documentation.id,
           );
-          const participationStatus = documentation.participations.find(
-            (part) => part.id === newStatus.id,
-          );
-          participationStatus.absenceReason = newStatus.absenceReason;
-          participationStatus.isOptimistic = newStatus.isOptimistic;
+
+          incomingStatuses.forEach((newStatus) => {
+            const participationStatus = documentation.participations.find(
+              (part) => part.id === newStatus.id,
+            );
+            participationStatus.absenceReason = newStatus.absenceReason;
+            participationStatus.isOptimistic = newStatus.isOptimistic;
+          });
 
           return storedDocumentations;
         },
@@ -177,7 +177,7 @@ export default {
               empty-value="present"
               :loadSelectedChip="loading"
               :value="item.absenceReason?.id || 'present'"
-              @input="sendToServer(item, 'absenceReason', $event)"
+              @input="sendToServer([item], 'absenceReason', $event)"
             />
           </v-card-text>
         </template>