diff --git a/src/frontend/src/components/CreateEventModal.vue b/src/frontend/src/components/CreateEventModal.vue index 6b81cc8..b5c50fd 100644 --- a/src/frontend/src/components/CreateEventModal.vue +++ b/src/frontend/src/components/CreateEventModal.vue @@ -136,6 +136,7 @@ export default defineComponent({ needsRide: [] }; eventStore.addEvent(newEvent); + eventStore.sortEvents(false); eventStore.selectEvent(newEvent); popupStore.addPopup(PopupType.Success, 'Event Created!'); diff --git a/src/frontend/src/stores/events.ts b/src/frontend/src/stores/events.ts index 4998dde..0b8a735 100644 --- a/src/frontend/src/stores/events.ts +++ b/src/frontend/src/stores/events.ts @@ -16,11 +16,16 @@ export const useEventStore = defineStore('events', { actions: { addEvent(event: Event) { this.events.push(event); - this.events.sort(sortByStartDate); }, setEvents(events: Event[]) { this.events = events; + }, + sortEvents(past: Boolean) { this.events.sort(sortByStartDate); + + if (past) { + this.events.reverse(); + } }, removeEvent(event: Event | null) { if (event == null) { diff --git a/src/frontend/src/views/HomeView.vue b/src/frontend/src/views/HomeView.vue index f9f1a46..c705d08 100644 --- a/src/frontend/src/views/HomeView.vue +++ b/src/frontend/src/views/HomeView.vue @@ -88,6 +88,7 @@ export default defineComponent({ const data = await response.json(); const eventStore = useEventStore(); eventStore.setEvents(data); + eventStore.sortEvents(this.showPast); eventStore.selectedEvent = null; this.loading = false; } catch (error) {