+
-
-
- {{ getEventById(day?.event?.eventId ?? -1)?.title }}
-
-
-
-
-
+
+
- {{ day.event?.participations }}
-
-
+ {{ getEventById(event?.eventId ?? -1)?.title }}
+
+
+
+
+
+ {{ event?.participations }}
+
+
+
+
-
diff --git a/src/Resources/src/components/dashboard/GuestLink.vue b/src/Resources/src/components/dashboard/GuestLink.vue
index 398da6315..0acfb0eef 100644
--- a/src/Resources/src/components/dashboard/GuestLink.vue
+++ b/src/Resources/src/components/dashboard/GuestLink.vue
@@ -15,10 +15,12 @@ import { useI18n } from 'vue-i18n';
import { CheckIcon } from '@heroicons/vue/solid';
import { onMounted, ref } from 'vue';
import { Invitation } from '@/enums/Invitation';
+import type { EventParticipation } from '@/api/getDashboardData';
const props = defineProps<{
dayID: string;
invitation: Invitation;
+ eventParticipation?: EventParticipation;
}>();
const { t } = useI18n();
@@ -26,7 +28,9 @@ const url = ref('');
onMounted(async () => {
const { link, error } =
- props.invitation === Invitation.MEAL ? await useGuestLink(props.dayID) : await getEventGuestLink(props.dayID);
+ props.invitation === Invitation.MEAL
+ ? await useGuestLink(props.dayID)
+ : await getEventGuestLink(props.eventParticipation);
if (error.value === false && link.value !== undefined) {
copyTextToClipboard(link.value.url);
url.value = link.value.url;
diff --git a/src/Resources/src/components/dashboard/MealCheckbox.vue b/src/Resources/src/components/dashboard/MealCheckbox.vue
index b37b92273..52bebec40 100644
--- a/src/Resources/src/components/dashboard/MealCheckbox.vue
+++ b/src/Resources/src/components/dashboard/MealCheckbox.vue
@@ -263,5 +263,6 @@ async function closeCombiModal(slugs: string[]) {
if (slugs !== undefined) {
await joinMeal(slugs);
}
+ removeLock(String(props.dayID));
}
diff --git a/src/Resources/src/components/dashboard/ParticipantsListModal.vue b/src/Resources/src/components/dashboard/ParticipantsListModal.vue
index 3e3f4e1cb..478aca1df 100644
--- a/src/Resources/src/components/dashboard/ParticipantsListModal.vue
+++ b/src/Resources/src/components/dashboard/ParticipantsListModal.vue
@@ -6,7 +6,7 @@
>
(),
{
eventTitle: ''
@@ -77,7 +78,7 @@ const isLoading = ref(false);
watch(showParticipations, async () => {
if (showParticipations.value === true) {
isLoading.value = true;
- participations.value = ((await getParticipantsForEvent(props.date)) as string[]).sort();
+ participations.value = ((await getParticipantsForEvent(props.date, props.participationId)) as string[]).sort();
isLoading.value = false;
}
});
diff --git a/src/Resources/src/components/guest/GuestCheckbox.vue b/src/Resources/src/components/guest/GuestCheckbox.vue
index dd527b9a0..cc6396dc6 100644
--- a/src/Resources/src/components/guest/GuestCheckbox.vue
+++ b/src/Resources/src/components/guest/GuestCheckbox.vue
@@ -1,14 +1,12 @@
@@ -22,7 +20,7 @@
diff --git a/src/Resources/src/components/guest/GuestDay.vue b/src/Resources/src/components/guest/GuestDay.vue
index e58f7c63f..e9a299345 100644
--- a/src/Resources/src/components/guest/GuestDay.vue
+++ b/src/Resources/src/components/guest/GuestDay.vue
@@ -38,11 +38,14 @@
@@ -70,6 +73,7 @@ const { t, locale } = useI18n();
const props = defineProps<{
guestData: GuestDay;
+ chosenMeals: string[];
}>();
const weekday = computed(() => translateWeekday(props.guestData.date, locale));
diff --git a/src/Resources/src/components/guest/GuestMeal.vue b/src/Resources/src/components/guest/GuestMeal.vue
index 5006d92d7..49aaa5246 100644
--- a/src/Resources/src/components/guest/GuestMeal.vue
+++ b/src/Resources/src/components/guest/GuestMeal.vue
@@ -37,6 +37,7 @@