From c5aedd151ffbe4fb2eb083d25b77db2d7316512a Mon Sep 17 00:00:00 2001
From: Michael Bauer <michael-bauer@posteo.de>
Date: Wed, 24 Apr 2024 18:48:37 +0200
Subject: [PATCH] Improve calendar nav for in-between days

Did nothing in this case previously
---
 .../frontend/components/coursebook/Coursebook.vue | 15 ++++++++++-----
 1 file changed, 10 insertions(+), 5 deletions(-)

diff --git a/aleksis/apps/alsijil/frontend/components/coursebook/Coursebook.vue b/aleksis/apps/alsijil/frontend/components/coursebook/Coursebook.vue
index af143a59a..4e673db88 100644
--- a/aleksis/apps/alsijil/frontend/components/coursebook/Coursebook.vue
+++ b/aleksis/apps/alsijil/frontend/components/coursebook/Coursebook.vue
@@ -333,11 +333,16 @@ export default {
         // Also intersect handler does not always react to scrollIntoView
         this.setDate(date);
         present.focus("smooth");
-      } else if (
-        !this.findPrev(DateTime.fromISO(date)) ||
-        !this.findNext(DateTime.fromISO(date))
-      ) {
-        this.resetDate(date);
+      } else {
+        const prev = this.findPrev(DateTime.fromISO(date));
+        const next = this.findNext(DateTime.fromISO(date));
+        if (prev && next) {
+          // In between two present days -> goto prev
+          this.gotoDate(prev.toISODate());
+        } else {
+          // Outsite present day range
+          this.resetDate(date);
+        }
       }
     },
     gotoPrev() {
-- 
GitLab