Add custom activity support and clear booking data on submission
This commit is contained in:
+15
-10
@@ -10,7 +10,12 @@
|
||||
const activityIcon = document.getElementById("activityIcon");
|
||||
const checkoutBtn = document.getElementById("checkoutBtn");
|
||||
|
||||
const selectedActivity = localStorage.getItem("selectedActivity");
|
||||
function cleanPrefix(str) {
|
||||
if (!str) return "";
|
||||
return str.replace(/^(Etwas eigenes|Sonstiges):\s*/i, "");
|
||||
}
|
||||
|
||||
const selectedActivity = cleanPrefix(localStorage.getItem("selectedActivity"));
|
||||
const selectedDate = localStorage.getItem("selectedDate");
|
||||
const selectedName = localStorage.getItem("selectedName");
|
||||
|
||||
@@ -57,8 +62,12 @@
|
||||
checkoutBtn.textContent = "Wird übermittelt... 💌";
|
||||
|
||||
const payload = {
|
||||
activity: selectedActivity,
|
||||
activities: storedActivities,
|
||||
activity: cleanPrefix(selectedActivity),
|
||||
activities: storedActivities.map((a) => ({
|
||||
...a,
|
||||
name: cleanPrefix(a.name),
|
||||
customDescription: cleanPrefix(a.customDescription || a.name),
|
||||
})),
|
||||
date: selectedDate,
|
||||
dateType: localStorage.getItem("selectedDateType") || "long",
|
||||
name: selectedName,
|
||||
@@ -79,13 +88,9 @@
|
||||
})
|
||||
.then((data) => {
|
||||
if (data.success) {
|
||||
try {
|
||||
const localBooked = JSON.parse(localStorage.getItem("bookedDates") || "[]");
|
||||
if (!localBooked.includes(selectedDate)) {
|
||||
localBooked.push(selectedDate);
|
||||
localStorage.setItem("bookedDates", JSON.stringify(localBooked));
|
||||
}
|
||||
} catch (e) {}
|
||||
// Alle lokal gespeicherten Daten (inkl. bookedDates und ausgewählter Werte) leeren,
|
||||
// damit bei der nächsten Buchung alles frisch geladen / neu ausgewählt wird.
|
||||
localStorage.clear();
|
||||
|
||||
summarySection.classList.add("hidden");
|
||||
if (backLink) {
|
||||
|
||||
Reference in New Issue
Block a user