fix: restrict activity selection to a single short activity on short dates

This commit is contained in:
2026-08-12 15:14:18 +02:00
parent 617d906d3e
commit 964ac21acb
+9 -5
View File
@@ -21,7 +21,7 @@
month: "long", month: "long",
year: "numeric", year: "numeric",
}); });
dateSummary.textContent = `Für euer Date am ${formattedDate}.`; dateSummary.textContent = `Für unser Date am ${formattedDate}.`;
let availableActivities = []; let availableActivities = [];
let selectedList = []; let selectedList = [];
@@ -96,12 +96,16 @@
// Short activity // Short activity
if (isAlreadySelected) { if (isAlreadySelected) {
selectedList = selectedList.filter((a) => a.name !== activity.name); selectedList = selectedList.filter((a) => a.name !== activity.name);
} else if (selectedDateType === "short") {
// An kurzen Tagen ist nur maximal eine kurze Aktivität erlaubt
selectedList = [activity];
} else { } else {
// If a long activity was selected, replace it // An langen Tagen:
// Falls vorher eine lange Aktivität gewählt war, ersetzen
if (selectedList.some((a) => a.type === "long")) { if (selectedList.some((a) => a.type === "long")) {
selectedList = [activity]; selectedList = [activity];
} else if (selectedList.length >= 2) { } else if (selectedList.length >= 2) {
// Max 2 short activities, replace the second one // Maximal 2 kurze Aktivitäten, die zweite ersetzen
selectedList = [selectedList[0], activity]; selectedList = [selectedList[0], activity];
} else { } else {
selectedList.push(activity); selectedList.push(activity);
@@ -118,10 +122,10 @@
if (selectedDateType === "long" && shortCount === 1 && !hasLong) { if (selectedDateType === "long" && shortCount === 1 && !hasLong) {
timeNotice.textContent = timeNotice.textContent =
"💡 An diesem Tag haben wir reichlich Zeit! Wenn du möchtest, kannst du noch eine 2. kurze Aktivität auswählen."; "💡 An diesem Tag haben wir reichlich Zeit! Wenn du möchtest, kannst du noch eine zweite kurze Aktivität auswählen.";
timeNotice.classList.remove("hidden"); timeNotice.classList.remove("hidden");
} else if (selectedDateType === "long" && shortCount === 2) { } else if (selectedDateType === "long" && shortCount === 2) {
timeNotice.textContent = "🎉 Perfekt! Du hast 2 kurze Aktivitäten für euren langen Tag ausgewählt."; timeNotice.textContent = "🎉 Perfekt! Du hast 2 kurze Aktivitäten für unseren Tag ausgewählt.";
timeNotice.classList.remove("hidden"); timeNotice.classList.remove("hidden");
} else { } else {
timeNotice.classList.add("hidden"); timeNotice.classList.add("hidden");