Merge branch 'passed-events-related-backend' into 'main'

Move filtering of past events in related events section to backend

See merge request framasoft/mobilizon!1526
This commit is contained in:
Thomas Citharel 2024-02-05 10:21:20 +00:00
commit 54aa628403
2 changed files with 3 additions and 14 deletions

View file

@ -1774,6 +1774,7 @@ defmodule Mobilizon.Events do
|> distinct([e], e.id)
|> join(:left, [e], et in "events_tags", on: e.id == et.event_id)
|> join(:left, [e], a in Address, on: e.physical_address_id == a.id)
|> filter_future_events(true)
|> filter_draft()
|> filter_local_or_from_followed_instances_events()
|> filter_public_visibility()

View file

@ -243,12 +243,12 @@
<section
class="bg-white dark:bg-zinc-700 px-3 pt-1 pb-3 rounded my-4"
v-if="(nonPassedRelatedEvents ?? []).length > 0"
v-if="(event?.relatedEvents ?? []).length > 0"
>
<h2 class="text-2xl mb-2">
{{ t("These events may interest you") }}
</h2>
<multi-card :events="nonPassedRelatedEvents ?? []" />
<multi-card :events="event?.relatedEvents ?? []" />
</section>
<o-modal
v-model:active="showMap"
@ -327,7 +327,6 @@ import { useI18n } from "vue-i18n";
import { Notifier } from "@/plugins/notifier";
import { AbsintheGraphQLErrors } from "@/types/errors.model";
import { useHead } from "@unhead/vue";
import { IEvent } from "@/types/event.model";
const IntegrationTwitch = defineAsyncComponent(
() => import("@/components/Event/Integrations/TwitchIntegration.vue")
@ -612,17 +611,6 @@ const organizerDomain = computed((): string | undefined => {
return organizer.value?.domain ?? undefined;
});
const nonPassedRelatedEvents = computed((): IEvent[] | undefined => {
const relatedEvents = event.value?.relatedEvents;
return relatedEvents?.filter((relatedEvent: IEvent) => {
const endsOn = relatedEvent.endsOn
? new Date(relatedEvent.endsOn)
: new Date(relatedEvent.beginsOn);
return endsOn > new Date();
});
});
useHead({
title: computed(() => eventTitle.value ?? ""),
meta: [{ name: "description", content: eventDescription.value }],