From 32a7389d0b7cf651fccf41cb74e7340b38da0bb4 Mon Sep 17 00:00:00 2001 From: Padreug Date: Tue, 16 Jun 2026 00:26:26 +0200 Subject: [PATCH 01/14] feat(events): default calendar selection to today The month-grid calendar opened with no day selected, so the events panel below was empty until the user clicked a day. Initialise the selection to today (currentMonth already starts on the current month) so it opens showing today's events. Co-Authored-By: Claude Opus 4.8 (1M context) --- src/modules/events/components/EventCalendarView.vue | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/modules/events/components/EventCalendarView.vue b/src/modules/events/components/EventCalendarView.vue index 77e0778..c77b908 100644 --- a/src/modules/events/components/EventCalendarView.vue +++ b/src/modules/events/components/EventCalendarView.vue @@ -68,7 +68,9 @@ function getDotCount(date: Date): number { return Math.min(getEventsForDay(date).length, 3) } -const selectedDay = ref(null) +// Default the selection to today so the calendar opens on today's events +// rather than an empty panel (currentMonth already starts on this month). +const selectedDay = ref(new Date()) const selectedDayEvents = computed(() => { if (!selectedDay.value) return [] return getEventsForDay(selectedDay.value) From 52e9d11ea9edd2a717cc097ead0b4c5a72cdf717 Mon Sep 17 00:00:00 2001 From: Padreug Date: Tue, 16 Jun 2026 00:38:23 +0200 Subject: [PATCH 02/14] feat(events): add Back button to the calendar page MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The calendar page had no way back to the feed except the browser/back gesture. Add a top-bar ghost Back link (ArrowLeft + "Back" → events feed) mirroring EventDetailPage's pattern for navigation consistency. Co-Authored-By: Claude Opus 4.8 (1M context) --- src/modules/events/views/EventsCalendarPage.vue | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/src/modules/events/views/EventsCalendarPage.vue b/src/modules/events/views/EventsCalendarPage.vue index 3198976..6826125 100644 --- a/src/modules/events/views/EventsCalendarPage.vue +++ b/src/modules/events/views/EventsCalendarPage.vue @@ -2,7 +2,7 @@ import { computed, onMounted, ref } from 'vue' import { useRouter } from 'vue-router' import { useI18n } from 'vue-i18n' -import { Ticket } from 'lucide-vue-next' +import { ArrowLeft, Ticket } from 'lucide-vue-next' import { Button } from '@/components/ui/button' import { useEvents } from '../composables/useEvents' import { useOwnedTickets } from '../composables/useOwnedTickets' @@ -34,10 +34,23 @@ onMounted(() => { function handleSelectEvent(event: Event) { router.push({ name: 'event-detail', params: { id: event.id } }) } + +function goBack() { + router.push({ name: 'events' }) +} From 9d98f3fdf24591e6db23b55ad5081f3623c5ed22 Mon Sep 17 00:00:00 2001 From: Padreug Date: Tue, 16 Jun 2026 12:55:33 +0200 Subject: [PATCH 14/14] fix(events): close calendar popup on route leave Defensive guard so the date-picker popup can never linger across navigation (reported: it appeared open on the feed after returning from an event detail page). Force calendarOpen=false in onBeforeRouteLeave on both the feed and My Tickets, the two popup hosts. Modals shouldn't survive a route change regardless of how the close/navigation interleave. Co-Authored-By: Claude Opus 4.8 (1M context) --- src/modules/events/views/EventsPage.vue | 9 ++++++++- src/modules/events/views/MyTicketsPage.vue | 7 ++++++- 2 files changed, 14 insertions(+), 2 deletions(-) diff --git a/src/modules/events/views/EventsPage.vue b/src/modules/events/views/EventsPage.vue index 9cb625c..121941e 100644 --- a/src/modules/events/views/EventsPage.vue +++ b/src/modules/events/views/EventsPage.vue @@ -1,6 +1,6 @@