From 5d4cdb7b83cebb9a74178984e47bfa9faca57801 Mon Sep 17 00:00:00 2001 From: Hornwitser Date: Sun, 21 Sep 2025 22:15:11 +0200 Subject: [PATCH 1/4] Fix session-expired event causing events to stop If a session-expired event is hit that does not match the current session then it should be ignored and event processing continue without it. This was incorrectly implemented and instead event processing would stop when any session-expired event was hit, not just the ones matching the current session. Fix logic to properly ignore session-expired events when it doesn't match the current session. --- server/streams.ts | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/server/streams.ts b/server/streams.ts index aca024a..dd312da 100644 --- a/server/streams.ts +++ b/server/streams.ts @@ -192,8 +192,9 @@ function sendEventToStream(stream: EventStream, event: ApiEvent) { if (event.type === "session-expired") { if (stream.sessionId === event.sessionId) { stream.close("session expired"); + return false; } - return false; + return true; } // Account events are specially handled and only sent to the user they belong to. From 7314b26c77114ceb365d5ea4eacb04442d10d1b7 Mon Sep 17 00:00:00 2001 From: Hornwitser Date: Sun, 21 Sep 2025 22:27:28 +0200 Subject: [PATCH 2/4] Fix tab visuals in Firefox The rendering of the tabs would not include the spacer in Firefox for if the width was not set for some reason. --- components/Tabs.vue | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/components/Tabs.vue b/components/Tabs.vue index 0d2ee34..37bf429 100644 --- a/components/Tabs.vue +++ b/components/Tabs.vue @@ -55,7 +55,6 @@ nav { } .tab { display: flex; - flex-wrap: wrap; } .tab.active { padding-block-start: 1px; @@ -65,6 +64,7 @@ nav { } .tab .spacer { flex: 1 0 0.75rem; + width: 0.75rem; } .tab .flap, .tab .spacer { From a32a49b281e7d08f76154e7ec29d46acd2e518f3 Mon Sep 17 00:00:00 2001 From: Hornwitser Date: Sun, 21 Sep 2025 23:15:10 +0200 Subject: [PATCH 3/4] Add UI for setting cancelled status Add indications in event cards, event slot cards and the timetable for an event or event slot being cancelled by striking it through and dimming the text colour. And a checkbox in the event and event slot list to edit the cancelled status. And a diff entry for the cancelled status on events and event slots. --- components/CardEvent.vue | 20 +++++++++++++++++--- components/CardEventSlot.vue | 13 +++++++++++-- components/DiffScheduleEvent.vue | 6 ++++++ components/DiffScheduleEventSlot.vue | 6 ++++++ components/TableScheduleEventSlots.vue | 9 +++++++++ components/TableScheduleEvents.vue | 9 +++++++++ components/Timetable.vue | 11 ++++++++++- 7 files changed, 68 insertions(+), 6 deletions(-) diff --git a/components/CardEvent.vue b/components/CardEvent.vue index cec96b9..0d90894 100644 --- a/components/CardEvent.vue +++ b/components/CardEvent.vue @@ -3,7 +3,10 @@ SPDX-License-Identifier: AGPL-3.0-or-later -->