Skip to content

Commit f36e2c5

Browse files
CopilotProLoser
andcommitted
Sort visibleEventsList by start time for chronological swipe navigation
Co-authored-by: ProLoser <67395+ProLoser@users.noreply.github.com>
1 parent 47636e7 commit f36e2c5

1 file changed

Lines changed: 10 additions & 2 deletions

File tree

map.js

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -597,8 +597,16 @@ window.filter = async function (filters = {}) {
597597
window.history.replaceState({}, '', '?' + query.join('&'));
598598
form.elements['countEvents'].innerText = count;
599599
form.elements['countCategories'].innerText = categories.length || 'All';
600-
// Update the cached visible events list for card navigation
601-
visibleEventsList = window.events.get()?.filter(e => e.visible && e.title && e.geometry) || [];
600+
// Update the cached visible events list for card navigation, sorted by start time
601+
const getEventStartTime = event => {
602+
if (!event.date_text || !event.time) return Infinity;
603+
const timestamp = new Date(`${event.date_text} ${event.time.split(' to ')[0]}`).getTime();
604+
return isNaN(timestamp) ? Infinity : timestamp;
605+
};
606+
visibleEventsList = (window.events.get()?.filter(e => e.visible && e.title && e.geometry) || [])
607+
.map(event => ({ event, startTime: getEventStartTime(event) }))
608+
.sort((a, b) => a.startTime - b.startTime)
609+
.map(({ event }) => event);
602610
// Dismiss the card when filters change since the current event may no longer be visible
603611
hideEventCard();
604612
};

0 commit comments

Comments
 (0)