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

fix: don't show passed/finished events in related events section

See merge request framasoft/mobilizon!1482
This commit is contained in:
Thomas Citharel 2023-11-22 16:19:13 +00:00
commit 797eb2334b
2 changed files with 15 additions and 2 deletions

View file

@ -64,6 +64,7 @@ const FULL_EVENT_FRAGMENT = gql`
uuid
title
beginsOn
endsOn
status
language
picture {

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="(event?.relatedEvents ?? []).length > 0"
v-if="(nonPassedRelatedEvents ?? []).length > 0"
>
<h2 class="text-2xl mb-2">
{{ t("These events may interest you") }}
</h2>
<multi-card :events="event?.relatedEvents ?? []" />
<multi-card :events="nonPassedRelatedEvents ?? []" />
</section>
<o-modal
v-model:active="showMap"
@ -327,6 +327,7 @@ 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")
@ -611,6 +612,17 @@ const organizerDomain = computed((): string | undefined => {
return organizer.value?.domain ?? undefined;
});
const nonPassedRelatedEvents = computed((): IEvent[] | undefined => {
let 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 }],