diff --git a/aleksis/apps/alsijil/frontend/components/coursebook/documentation/DocumentationStatus.vue b/aleksis/apps/alsijil/frontend/components/coursebook/documentation/DocumentationStatus.vue
index 5531c1e7e6af794d7cc3a058713d9b159697b04f..a797465e981633240063f4266ebbeb036acc9421 100644
--- a/aleksis/apps/alsijil/frontend/components/coursebook/documentation/DocumentationStatus.vue
+++ b/aleksis/apps/alsijil/frontend/components/coursebook/documentation/DocumentationStatus.vue
@@ -112,14 +112,23 @@ export default {
   },
   mounted() {
     this.updateStatus();
-    this.statusTimeout = setTimeout(
-      this.updateStatus,
-      this.documentationDateTimeStart.diff(DateTime.now(), "seconds").toObject()
-        .seconds,
-    );
+
+    if (DateTime.now() < this.documentationDateTimeStart) {
+      this.statusTimeout = setTimeout(
+        this.updateStatus,
+        this.documentationDateTimeStart.diff(DateTime.now(), "seconds").toObject(),
+        );
+    } else if (DateTime.now() < this.documentationDateTimeEnd) {
+      this.statusTimeout = setTimeout(
+        this.updateStatus,
+        this.documentationDateTimeEnd.diff(DateTime.now(), "seconds").toObject(),
+        );
+    }
   },
   beforeDestroy() {
-    clearTimeout(this.statusTimeout);
+    if (this.statusTimeout) {
+      clearTimeout(this.statusTimeout);
+    }
   },
 };
 </script>