From 1410ceb441661e0b41b1602b7c4e453b1dfc3c49 Mon Sep 17 00:00:00 2001 From: Florian Bernard Date: Wed, 19 Aug 2026 13:28:52 +0000 Subject: [PATCH] Neueste --- .../RecurringBooking/RecurringBooking.js | 326 ++++++++++++++++++ .../jsobjects/RecurringBooking/metadata.json | 11 + .../GetSeatBookings/GetSeatBookings.txt | 3 +- .../queries/GetSeatBookings/metadata.json | 2 +- .../metadata.json | 41 +++ .../RecurringBooking-formatDate/metadata.json | 35 ++ .../metadata.json | 41 +++ .../metadata.json | 31 ++ .../RecurringBooking-parseDate/metadata.json | 35 ++ .../metadata.json | 31 ++ .../RecurringBooking-toggleDay/metadata.json | 35 ++ .../Platzbuchung/ConfirmBookingButton.json | 20 +- ...BookingEndTime.json => EndTimeSelect.json} | 4 +- .../widgets/Platzbuchung/Platzbuchung.json | 8 +- .../Platzbuchung/RecurringCheckbox.json | 4 +- .../{Button3Copy3.json => FridayButton.json} | 24 +- .../{Button3.json => MondayButton.json} | 24 +- .../RecurringContainer.json | 6 +- .../RecurringWeeksSelect.json | 65 ++++ .../RecurringWeeksText.json | 55 +++ .../RecurringContainer/Select1.json | 61 ---- .../RecurringContainer/Select2.json | 61 ---- .../RecurringContainer/Text3.json | 52 +++ ...{Button3Copy2.json => ThursdayButton.json} | 28 +- .../{Button3Copy.json => TuesdayButton.json} | 24 +- ...Button3Copy1.json => WednesdayButton.json} | 24 +- ...ingStartTime.json => StartTimeSelect.json} | 2 +- .../widgets/Platzbuchung/Text4.json | 55 +++ .../widgets/Platzbuchung/Text5.json | 55 +++ .../widgets/SeatCalendar/Custom5.json | 2 +- 30 files changed, 979 insertions(+), 186 deletions(-) create mode 100644 pages/Sitzplätze/jsobjects/RecurringBooking/RecurringBooking.js create mode 100644 pages/Sitzplätze/jsobjects/RecurringBooking/metadata.json create mode 100644 pages/Sitzplätze/queries/RecurringBooking-createRecurringDates/metadata.json create mode 100644 pages/Sitzplätze/queries/RecurringBooking-formatDate/metadata.json create mode 100644 pages/Sitzplätze/queries/RecurringBooking-formatDateTime/metadata.json create mode 100644 pages/Sitzplätze/queries/RecurringBooking-getSelectedWeekdays/metadata.json create mode 100644 pages/Sitzplätze/queries/RecurringBooking-parseDate/metadata.json create mode 100644 pages/Sitzplätze/queries/RecurringBooking-prepareRecurringBooking/metadata.json create mode 100644 pages/Sitzplätze/queries/RecurringBooking-toggleDay/metadata.json rename pages/Sitzplätze/widgets/Platzbuchung/{BookingEndTime.json => EndTimeSelect.json} (93%) rename pages/Sitzplätze/widgets/Platzbuchung/RecurringContainer/{Button3Copy3.json => FridayButton.json} (67%) rename pages/Sitzplätze/widgets/Platzbuchung/RecurringContainer/{Button3.json => MondayButton.json} (67%) create mode 100644 pages/Sitzplätze/widgets/Platzbuchung/RecurringContainer/RecurringWeeksSelect.json create mode 100644 pages/Sitzplätze/widgets/Platzbuchung/RecurringContainer/RecurringWeeksText.json delete mode 100644 pages/Sitzplätze/widgets/Platzbuchung/RecurringContainer/Select1.json delete mode 100644 pages/Sitzplätze/widgets/Platzbuchung/RecurringContainer/Select2.json create mode 100644 pages/Sitzplätze/widgets/Platzbuchung/RecurringContainer/Text3.json rename pages/Sitzplätze/widgets/Platzbuchung/RecurringContainer/{Button3Copy2.json => ThursdayButton.json} (67%) rename pages/Sitzplätze/widgets/Platzbuchung/RecurringContainer/{Button3Copy.json => TuesdayButton.json} (67%) rename pages/Sitzplätze/widgets/Platzbuchung/RecurringContainer/{Button3Copy1.json => WednesdayButton.json} (67%) rename pages/Sitzplätze/widgets/Platzbuchung/{BookingStartTime.json => StartTimeSelect.json} (98%) create mode 100644 pages/Sitzplätze/widgets/Platzbuchung/Text4.json create mode 100644 pages/Sitzplätze/widgets/Platzbuchung/Text5.json diff --git a/pages/Sitzplätze/jsobjects/RecurringBooking/RecurringBooking.js b/pages/Sitzplätze/jsobjects/RecurringBooking/RecurringBooking.js new file mode 100644 index 0000000..683b9a3 --- /dev/null +++ b/pages/Sitzplätze/jsobjects/RecurringBooking/RecurringBooking.js @@ -0,0 +1,326 @@ +export default { + async toggleDay(day) { + const validDays = [ + "monday", + "tuesday", + "wednesday", + "thursday", + "friday" + ]; + + if (!validDays.includes(day)) { + showAlert( + "Ungültiger Wochentag.", + "error" + ); + return; + } + + const currentDays = + appsmith.store.recurringDays || {}; + + const nextDays = { + monday: Boolean( + currentDays.monday + ), + tuesday: Boolean( + currentDays.tuesday + ), + wednesday: Boolean( + currentDays.wednesday + ), + thursday: Boolean( + currentDays.thursday + ), + friday: Boolean( + currentDays.friday + ) + }; + + nextDays[day] = + !nextDays[day]; + + await storeValue( + "recurringDays", + nextDays, + false + ); + + return nextDays; + }, + + getSelectedWeekdays() { + const days = + appsmith.store.recurringDays || {}; + + const weekdayMap = { + monday: 1, + tuesday: 2, + wednesday: 3, + thursday: 4, + friday: 5 + }; + + return Object.entries( + weekdayMap + ) + .filter( + ([day]) => + days[day] === true + ) + .map( + ([, weekday]) => + weekday + ); + }, + + parseDate(value) { + if (!value) { + return null; + } + + const text = + String(value).slice(0, 10); + + const parts = + text.split("-").map(Number); + + if (parts.length !== 3) { + return null; + } + + const date = + new Date( + parts[0], + parts[1] - 1, + parts[2] + ); + + return Number.isNaN( + date.getTime() + ) + ? null + : date; + }, + + formatDate(date) { + const pad = + value => + String(value).padStart( + 2, + "0" + ); + + return [ + date.getFullYear(), + pad(date.getMonth() + 1), + pad(date.getDate()) + ].join("-"); + }, + + formatDateTime( + date, + time, + allDay + ) { + const dateText = + this.formatDate(date); + + if (allDay) { + return `${dateText} 00:00:00`; + } + + return `${dateText} ${time}:00`; + }, + + createRecurringDates( + startDate, + endDate, + selectedWeekdays + ) { + const dates = []; + const cursor = + new Date(startDate); + + while ( + cursor <= endDate + ) { + if ( + selectedWeekdays.includes( + cursor.getDay() + ) + ) { + dates.push( + new Date(cursor) + ); + } + + cursor.setDate( + cursor.getDate() + 1 + ); + } + + return dates; + }, + + async prepareRecurringBooking() { + const form = + appsmith.store.bookingFormData || + {}; + + const recurring = + RecurringCheckbox.isChecked === true; + + if (!recurring) { + return CreateBooking.run() + .then(() => { + return GetSeatBookings.run(); + }) + .then(() => { + return GetSeats.run(); + }) + .then(() => { + closeModal( + "Platzbuchung" + ); + + showAlert( + "Der Platz wurde erfolgreich gebucht.", + "success" + ); + }) + .catch((error) => { + console.error( + "Einzelbuchung fehlgeschlagen:", + error + ); + + showAlert( + "Die Buchung konnte nicht gespeichert werden.", + "error" + ); + }); +} + + const startDate = + this.parseDate( + form.startDate + ); + + const endDate = + this.parseDate( + form.endDate + ); + + if (!startDate || !endDate) { + showAlert( + "Start- oder Enddatum ist ungültig.", + "error" + ); + return; + } + + const selectedWeekdays = + this.getSelectedWeekdays(); + + if ( + selectedWeekdays.length === 0 + ) { + showAlert( + "Bitte mindestens einen Wochentag auswählen.", + "warning" + ); + return; + } + + const weeks = + Number( + RecurringWeeksSelect + .selectedOptionValue || 1 + ); + + if ( + !Number.isInteger(weeks) || + weeks < 1 || + weeks > 52 + ) { + showAlert( + "Bitte eine gültige Wochenanzahl auswählen.", + "warning" + ); + return; + } + + const dates = + this.createRecurringDates( + startDate, + endDate, + selectedWeekdays + ); + + if (dates.length === 0) { + showAlert( + "Im gewählten Zeitraum wurden keine passenden Wochentage gefunden.", + "warning" + ); + return; + } + + const startTime = + form.startTime || "00:00"; + + const endTime = + form.endTime || "23:59"; + + const allDay = + AllDayCheckbox.isChecked === true || + form.allDay === true; + + const candidates = + dates.map( + date => ({ + date: + this.formatDate(date), + + weekday: + date.toLocaleDateString( + "de-DE", + { + weekday: "long" + } + ), + + startDateTime: + this.formatDateTime( + date, + startTime, + allDay + ), + + endDateTime: + allDay + ? `${this.formatDate(date)} 23:59:59` + : this.formatDateTime( + date, + endTime, + false + ) + }) + ); + + await storeValue( + "recurringCheck", + { + candidates, + freeBookings: [], + conflicts: [], + bookingFormData: form, + weeks, + selectedWeekdays + }, + false + ); + + return candidates; + } +}; \ No newline at end of file diff --git a/pages/Sitzplätze/jsobjects/RecurringBooking/metadata.json b/pages/Sitzplätze/jsobjects/RecurringBooking/metadata.json new file mode 100644 index 0000000..6559fe2 --- /dev/null +++ b/pages/Sitzplätze/jsobjects/RecurringBooking/metadata.json @@ -0,0 +1,11 @@ +{ + "gitSyncId": "6a6b5b477ebc9edeca96e2f8_0b8b6251-5d40-4248-bd41-d87899c2849f", + "id": "Sitzplätze_RecurringBooking", + "unpublishedCollection": { + "name": "RecurringBooking", + "pageId": "Sitzplätze", + "pluginId": "js-plugin", + "pluginType": "JS", + "variables": [] + } +} \ No newline at end of file diff --git a/pages/Sitzplätze/queries/GetSeatBookings/GetSeatBookings.txt b/pages/Sitzplätze/queries/GetSeatBookings/GetSeatBookings.txt index e1804ec..018c107 100644 --- a/pages/Sitzplätze/queries/GetSeatBookings/GetSeatBookings.txt +++ b/pages/Sitzplätze/queries/GetSeatBookings/GetSeatBookings.txt @@ -4,7 +4,8 @@ SELECT titel AS title, startzeit AS start, endzeit AS end, - gebucht_von + gebucht_von, + erstellt_am FROM `buchungen` WHERE platz_id = {{ appsmith.store.selectedSeatId }} diff --git a/pages/Sitzplätze/queries/GetSeatBookings/metadata.json b/pages/Sitzplätze/queries/GetSeatBookings/metadata.json index bb3fe64..277f5dd 100644 --- a/pages/Sitzplätze/queries/GetSeatBookings/metadata.json +++ b/pages/Sitzplätze/queries/GetSeatBookings/metadata.json @@ -5,7 +5,7 @@ "pluginType": "DB", "unpublishedAction": { "actionConfiguration": { - "body": "SELECT\n id,\n platz_id,\n titel AS title,\n startzeit AS start,\n endzeit AS end,\n gebucht_von\nFROM `buchungen`\nWHERE platz_id =\n {{ appsmith.store.selectedSeatId }}\nORDER BY startzeit;", + "body": "SELECT\n id,\n platz_id,\n titel AS title,\n startzeit AS start,\n endzeit AS end,\n gebucht_von,\n erstellt_am\nFROM `buchungen`\nWHERE platz_id =\n {{ appsmith.store.selectedSeatId }}\nORDER BY startzeit;", "encodeParamsToggle": true, "paginationType": "NONE", "pluginSpecifiedTemplates": [ diff --git a/pages/Sitzplätze/queries/RecurringBooking-createRecurringDates/metadata.json b/pages/Sitzplätze/queries/RecurringBooking-createRecurringDates/metadata.json new file mode 100644 index 0000000..c17c7a0 --- /dev/null +++ b/pages/Sitzplätze/queries/RecurringBooking-createRecurringDates/metadata.json @@ -0,0 +1,41 @@ +{ + "gitSyncId": "6a6b5b477ebc9edeca96e2f8_d0c04046-bd8b-42a5-a7f8-58272d3d0169", + "id": "Sitzplätze_RecurringBooking.createRecurringDates", + "pluginId": "js-plugin", + "pluginType": "JS", + "unpublishedAction": { + "actionConfiguration": { + "encodeParamsToggle": true, + "jsArguments": [ + { + "name": "startDate" + }, + { + "name": "endDate" + }, + { + "name": "selectedWeekdays" + } + ], + "paginationType": "NONE", + "timeoutInMillisecond": 10000 + }, + "collectionId": "Sitzplätze_RecurringBooking", + "confirmBeforeExecute": false, + "datasource": { + "isAutoGenerated": false, + "name": "UNUSED_DATASOURCE", + "pluginId": "js-plugin" + }, + "dynamicBindingPathList": [ + { + "key": "body" + } + ], + "fullyQualifiedName": "RecurringBooking.createRecurringDates", + "name": "createRecurringDates", + "pageId": "Sitzplätze", + "runBehaviour": "MANUAL", + "userSetOnLoad": false + } +} \ No newline at end of file diff --git a/pages/Sitzplätze/queries/RecurringBooking-formatDate/metadata.json b/pages/Sitzplätze/queries/RecurringBooking-formatDate/metadata.json new file mode 100644 index 0000000..18e2345 --- /dev/null +++ b/pages/Sitzplätze/queries/RecurringBooking-formatDate/metadata.json @@ -0,0 +1,35 @@ +{ + "gitSyncId": "6a6b5b477ebc9edeca96e2f8_4bf3cfa5-fce3-493e-a566-383c18c49aa7", + "id": "Sitzplätze_RecurringBooking.formatDate", + "pluginId": "js-plugin", + "pluginType": "JS", + "unpublishedAction": { + "actionConfiguration": { + "encodeParamsToggle": true, + "jsArguments": [ + { + "name": "date" + } + ], + "paginationType": "NONE", + "timeoutInMillisecond": 10000 + }, + "collectionId": "Sitzplätze_RecurringBooking", + "confirmBeforeExecute": false, + "datasource": { + "isAutoGenerated": false, + "name": "UNUSED_DATASOURCE", + "pluginId": "js-plugin" + }, + "dynamicBindingPathList": [ + { + "key": "body" + } + ], + "fullyQualifiedName": "RecurringBooking.formatDate", + "name": "formatDate", + "pageId": "Sitzplätze", + "runBehaviour": "MANUAL", + "userSetOnLoad": false + } +} \ No newline at end of file diff --git a/pages/Sitzplätze/queries/RecurringBooking-formatDateTime/metadata.json b/pages/Sitzplätze/queries/RecurringBooking-formatDateTime/metadata.json new file mode 100644 index 0000000..92f20e5 --- /dev/null +++ b/pages/Sitzplätze/queries/RecurringBooking-formatDateTime/metadata.json @@ -0,0 +1,41 @@ +{ + "gitSyncId": "6a6b5b477ebc9edeca96e2f8_3d7d19eb-b12b-4d4f-bf3f-75bc8b6fda90", + "id": "Sitzplätze_RecurringBooking.formatDateTime", + "pluginId": "js-plugin", + "pluginType": "JS", + "unpublishedAction": { + "actionConfiguration": { + "encodeParamsToggle": true, + "jsArguments": [ + { + "name": "date" + }, + { + "name": "time" + }, + { + "name": "allDay" + } + ], + "paginationType": "NONE", + "timeoutInMillisecond": 10000 + }, + "collectionId": "Sitzplätze_RecurringBooking", + "confirmBeforeExecute": false, + "datasource": { + "isAutoGenerated": false, + "name": "UNUSED_DATASOURCE", + "pluginId": "js-plugin" + }, + "dynamicBindingPathList": [ + { + "key": "body" + } + ], + "fullyQualifiedName": "RecurringBooking.formatDateTime", + "name": "formatDateTime", + "pageId": "Sitzplätze", + "runBehaviour": "MANUAL", + "userSetOnLoad": false + } +} \ No newline at end of file diff --git a/pages/Sitzplätze/queries/RecurringBooking-getSelectedWeekdays/metadata.json b/pages/Sitzplätze/queries/RecurringBooking-getSelectedWeekdays/metadata.json new file mode 100644 index 0000000..e42485b --- /dev/null +++ b/pages/Sitzplätze/queries/RecurringBooking-getSelectedWeekdays/metadata.json @@ -0,0 +1,31 @@ +{ + "gitSyncId": "6a6b5b477ebc9edeca96e2f8_86b8bc08-a533-42e0-b9ae-c17500c697a2", + "id": "Sitzplätze_RecurringBooking.getSelectedWeekdays", + "pluginId": "js-plugin", + "pluginType": "JS", + "unpublishedAction": { + "actionConfiguration": { + "encodeParamsToggle": true, + "jsArguments": [], + "paginationType": "NONE", + "timeoutInMillisecond": 10000 + }, + "collectionId": "Sitzplätze_RecurringBooking", + "confirmBeforeExecute": false, + "datasource": { + "isAutoGenerated": false, + "name": "UNUSED_DATASOURCE", + "pluginId": "js-plugin" + }, + "dynamicBindingPathList": [ + { + "key": "body" + } + ], + "fullyQualifiedName": "RecurringBooking.getSelectedWeekdays", + "name": "getSelectedWeekdays", + "pageId": "Sitzplätze", + "runBehaviour": "MANUAL", + "userSetOnLoad": false + } +} \ No newline at end of file diff --git a/pages/Sitzplätze/queries/RecurringBooking-parseDate/metadata.json b/pages/Sitzplätze/queries/RecurringBooking-parseDate/metadata.json new file mode 100644 index 0000000..4060d6b --- /dev/null +++ b/pages/Sitzplätze/queries/RecurringBooking-parseDate/metadata.json @@ -0,0 +1,35 @@ +{ + "gitSyncId": "6a6b5b477ebc9edeca96e2f8_bd1cc297-4ea6-42f9-872c-c5abdec196cc", + "id": "Sitzplätze_RecurringBooking.parseDate", + "pluginId": "js-plugin", + "pluginType": "JS", + "unpublishedAction": { + "actionConfiguration": { + "encodeParamsToggle": true, + "jsArguments": [ + { + "name": "value" + } + ], + "paginationType": "NONE", + "timeoutInMillisecond": 10000 + }, + "collectionId": "Sitzplätze_RecurringBooking", + "confirmBeforeExecute": false, + "datasource": { + "isAutoGenerated": false, + "name": "UNUSED_DATASOURCE", + "pluginId": "js-plugin" + }, + "dynamicBindingPathList": [ + { + "key": "body" + } + ], + "fullyQualifiedName": "RecurringBooking.parseDate", + "name": "parseDate", + "pageId": "Sitzplätze", + "runBehaviour": "MANUAL", + "userSetOnLoad": false + } +} \ No newline at end of file diff --git a/pages/Sitzplätze/queries/RecurringBooking-prepareRecurringBooking/metadata.json b/pages/Sitzplätze/queries/RecurringBooking-prepareRecurringBooking/metadata.json new file mode 100644 index 0000000..8af66e7 --- /dev/null +++ b/pages/Sitzplätze/queries/RecurringBooking-prepareRecurringBooking/metadata.json @@ -0,0 +1,31 @@ +{ + "gitSyncId": "6a6b5b477ebc9edeca96e2f8_cff2140b-e5d4-42c8-9188-874a94c2cc05", + "id": "Sitzplätze_RecurringBooking.prepareRecurringBooking", + "pluginId": "js-plugin", + "pluginType": "JS", + "unpublishedAction": { + "actionConfiguration": { + "encodeParamsToggle": true, + "jsArguments": [], + "paginationType": "NONE", + "timeoutInMillisecond": 10000 + }, + "collectionId": "Sitzplätze_RecurringBooking", + "confirmBeforeExecute": false, + "datasource": { + "isAutoGenerated": false, + "name": "UNUSED_DATASOURCE", + "pluginId": "js-plugin" + }, + "dynamicBindingPathList": [ + { + "key": "body" + } + ], + "fullyQualifiedName": "RecurringBooking.prepareRecurringBooking", + "name": "prepareRecurringBooking", + "pageId": "Sitzplätze", + "runBehaviour": "MANUAL", + "userSetOnLoad": false + } +} \ No newline at end of file diff --git a/pages/Sitzplätze/queries/RecurringBooking-toggleDay/metadata.json b/pages/Sitzplätze/queries/RecurringBooking-toggleDay/metadata.json new file mode 100644 index 0000000..5f6ce06 --- /dev/null +++ b/pages/Sitzplätze/queries/RecurringBooking-toggleDay/metadata.json @@ -0,0 +1,35 @@ +{ + "gitSyncId": "6a6b5b477ebc9edeca96e2f8_282d76c6-d648-4ec1-a85d-77a19cc9a758", + "id": "Sitzplätze_RecurringBooking.toggleDay", + "pluginId": "js-plugin", + "pluginType": "JS", + "unpublishedAction": { + "actionConfiguration": { + "encodeParamsToggle": true, + "jsArguments": [ + { + "name": "day" + } + ], + "paginationType": "NONE", + "timeoutInMillisecond": 10000 + }, + "collectionId": "Sitzplätze_RecurringBooking", + "confirmBeforeExecute": false, + "datasource": { + "isAutoGenerated": false, + "name": "UNUSED_DATASOURCE", + "pluginId": "js-plugin" + }, + "dynamicBindingPathList": [ + { + "key": "body" + } + ], + "fullyQualifiedName": "RecurringBooking.toggleDay", + "name": "toggleDay", + "pageId": "Sitzplätze", + "runBehaviour": "MANUAL", + "userSetOnLoad": false + } +} \ No newline at end of file diff --git a/pages/Sitzplätze/widgets/Platzbuchung/ConfirmBookingButton.json b/pages/Sitzplätze/widgets/Platzbuchung/ConfirmBookingButton.json index e145db0..66c2eb7 100644 --- a/pages/Sitzplätze/widgets/Platzbuchung/ConfirmBookingButton.json +++ b/pages/Sitzplätze/widgets/Platzbuchung/ConfirmBookingButton.json @@ -1,7 +1,7 @@ { "animateLoading": true, "borderRadius": "{{appsmith.theme.borderRadius.appBorderRadius}}", - "bottomRow": 70, + "bottomRow": 79, "boxShadow": "none", "buttonColor": "{{appsmith.theme.colors.primaryColor}}", "buttonStyle": "PRIMARY_BUTTON", @@ -15,11 +15,7 @@ "key": "borderRadius" } ], - "dynamicPropertyPathList": [ - { - "key": "onClick" - } - ], + "dynamicPropertyPathList": [], "dynamicTriggerPathList": [ { "key": "onClick" @@ -30,25 +26,25 @@ "isLoading": false, "isVisible": true, "key": "on7g9pelq6", - "leftColumn": 51, + "leftColumn": 50, "minWidth": 120, "mobileBottomRow": 22, "mobileLeftColumn": 47, "mobileRightColumn": 63, "mobileTopRow": 18, "needsErrorInfo": false, - "onClick": "{{\n CreateBooking\n .run()\n .then(() => {\n return closeModal(\n \"Platzbuchung\"\n );\n })\n .then(() => {\n return GetSeatBookings.run();\n })\n .catch((error) => {\n console.error(\n \"Buchung fehlgeschlagen:\",\n error\n );\n\n showAlert(\n \"Die Buchung konnte nicht gespeichert werden.\",\n \"error\"\n );\n });\n}}", - "originalBottomRow": 40, - "originalTopRow": 36, + "onClick": "{{RecurringBooking.prepareRecurringBooking();}}", + "originalBottomRow": 78, + "originalTopRow": 74, "parentId": "q44lz1f0e4", "placement": "CENTER", "recaptchaType": "V3", "renderMode": "CANVAS", "resetFormOnClick": false, "responsiveBehavior": "hug", - "rightColumn": 63, + "rightColumn": 62, "text": "Buchen", - "topRow": 66, + "topRow": 75, "type": "BUTTON_WIDGET", "version": 1, "widgetId": "iutdgcd629", diff --git a/pages/Sitzplätze/widgets/Platzbuchung/BookingEndTime.json b/pages/Sitzplätze/widgets/Platzbuchung/EndTimeSelect.json similarity index 93% rename from pages/Sitzplätze/widgets/Platzbuchung/BookingEndTime.json rename to pages/Sitzplätze/widgets/Platzbuchung/EndTimeSelect.json index 059a509..be6dcf2 100644 --- a/pages/Sitzplätze/widgets/Platzbuchung/BookingEndTime.json +++ b/pages/Sitzplätze/widgets/Platzbuchung/EndTimeSelect.json @@ -59,10 +59,10 @@ "responsiveBehavior": "fill", "rightColumn": 53, "serverSideFiltering": false, - "sourceData": "{{\n [\n { label: \"07:30\", value: \"07:30\" },\n { label: \"08:00\", value: \"08:00\" },\n { label: \"08:30\", value: \"08:30\" },\n { label: \"09:00\", value: \"09:00\" },\n { label: \"09:30\", value: \"09:30\" },\n { label: \"10:00\", value: \"10:00\" },\n { label: \"10:30\", value: \"10:30\" },\n { label: \"11:00\", value: \"11:00\" },\n { label: \"11:30\", value: \"11:30\" },\n { label: \"12:00\", value: \"12:00\" },\n { label: \"12:30\", value: \"12:30\" },\n { label: \"13:00\", value: \"13:00\" },\n { label: \"13:30\", value: \"13:30\" },\n { label: \"14:00\", value: \"14:00\" },\n { label: \"14:30\", value: \"14:30\" },\n { label: \"15:00\", value: \"15:00\" },\n { label: \"15:30\", value: \"15:30\" },\n { label: \"16:00\", value: \"16:00\" },\n { label: \"16:30\", value: \"16:30\" },\n { label: \"17:00\", value: \"17:00\" },\n { label: \"17:30\", value: \"17:30\" },\n { label: \"18:00\", value: \"18:00\" }\n ].filter(option => {\n const start =\n BookingStartTime.selectedOptionValue ||\n \"07:00\";\n\n return option.value > start;\n })\n}}", + "sourceData": "{{\n [\n { label: \"07:30\", value: \"07:30\" },\n { label: \"08:00\", value: \"08:00\" },\n { label: \"08:30\", value: \"08:30\" },\n { label: \"09:00\", value: \"09:00\" },\n { label: \"09:30\", value: \"09:30\" },\n { label: \"10:00\", value: \"10:00\" },\n { label: \"10:30\", value: \"10:30\" },\n { label: \"11:00\", value: \"11:00\" },\n { label: \"11:30\", value: \"11:30\" },\n { label: \"12:00\", value: \"12:00\" },\n { label: \"12:30\", value: \"12:30\" },\n { label: \"13:00\", value: \"13:00\" },\n { label: \"13:30\", value: \"13:30\" },\n { label: \"14:00\", value: \"14:00\" },\n { label: \"14:30\", value: \"14:30\" },\n { label: \"15:00\", value: \"15:00\" },\n { label: \"15:30\", value: \"15:30\" },\n { label: \"16:00\", value: \"16:00\" },\n { label: \"16:30\", value: \"16:30\" },\n { label: \"17:00\", value: \"17:00\" },\n { label: \"17:30\", value: \"17:30\" },\n { label: \"18:00\", value: \"18:00\" }\n ].filter(option => {\n const start =\n StartTimeSelect.selectedOptionValue ||\n \"07:00\";\n\n return option.value > start;\n })\n}}", "topRow": 20, "type": "SELECT_WIDGET", "version": 1, "widgetId": "ffcw6h9yvt", - "widgetName": "BookingEndTime" + "widgetName": "EndTimeSelect" } \ No newline at end of file diff --git a/pages/Sitzplätze/widgets/Platzbuchung/Platzbuchung.json b/pages/Sitzplätze/widgets/Platzbuchung/Platzbuchung.json index 7d61765..df6aa64 100644 --- a/pages/Sitzplätze/widgets/Platzbuchung/Platzbuchung.json +++ b/pages/Sitzplätze/widgets/Platzbuchung/Platzbuchung.json @@ -1,14 +1,14 @@ { "animateLoading": true, "borderRadius": "{{appsmith.theme.borderRadius.appBorderRadius}}", - "bottomRow": 72, + "bottomRow": 94, "boxShadow": "none", "canEscapeKeyClose": true, "canOutsideClickClose": true, "children": [ { "borderRadius": "{{appsmith.theme.borderRadius.appBorderRadius}}", - "bottomRow": 720, + "bottomRow": 940, "boxShadow": "{{appsmith.theme.boxShadow.appBoxShadow}}", "canExtend": true, "detachFromLayout": true, @@ -58,14 +58,14 @@ ], "dynamicHeight": "AUTO_HEIGHT", "dynamicTriggerPathList": [], - "height": 720, + "height": 940, "isCanvas": true, "isLoading": false, "key": "tfld9k9m85", "leftColumn": 19, "maxDynamicHeight": 9000, "minDynamicHeight": 10, - "minHeight": 720, + "minHeight": 940, "mobileBottomRow": 39, "mobileLeftColumn": 19, "mobileRightColumn": 43, diff --git a/pages/Sitzplätze/widgets/Platzbuchung/RecurringCheckbox.json b/pages/Sitzplätze/widgets/Platzbuchung/RecurringCheckbox.json index a860dda..ca153d6 100644 --- a/pages/Sitzplätze/widgets/Platzbuchung/RecurringCheckbox.json +++ b/pages/Sitzplätze/widgets/Platzbuchung/RecurringCheckbox.json @@ -22,7 +22,7 @@ "key": "qvkdps07r4", "label": "Wiederkehrend", "labelPosition": "Right", - "leftColumn": 1, + "leftColumn": 0, "maxDynamicHeight": 9000, "minDynamicHeight": 4, "minWidth": 450, @@ -38,7 +38,7 @@ "parentRowSpace": 10, "renderMode": "CANVAS", "responsiveBehavior": "fill", - "rightColumn": 45, + "rightColumn": 39, "topRow": 42, "type": "CHECKBOX_WIDGET", "version": 1, diff --git a/pages/Sitzplätze/widgets/Platzbuchung/RecurringContainer/Button3Copy3.json b/pages/Sitzplätze/widgets/Platzbuchung/RecurringContainer/FridayButton.json similarity index 67% rename from pages/Sitzplätze/widgets/Platzbuchung/RecurringContainer/Button3Copy3.json rename to pages/Sitzplätze/widgets/Platzbuchung/RecurringContainer/FridayButton.json index bad7c74..83c5503 100644 --- a/pages/Sitzplätze/widgets/Platzbuchung/RecurringContainer/Button3Copy3.json +++ b/pages/Sitzplätze/widgets/Platzbuchung/RecurringContainer/FridayButton.json @@ -1,9 +1,9 @@ { "animateLoading": true, "borderRadius": "{{appsmith.theme.borderRadius.appBorderRadius}}", - "bottomRow": 10, + "bottomRow": 14, "boxShadow": "none", - "buttonColor": "{{appsmith.theme.colors.primaryColor}}", + "buttonColor": "{{\n appsmith.store.recurringDays?.friday === true\n ? \"#1f5d85\"\n : \"#b8c5ce\"\n}}", "buttonVariant": "PRIMARY", "disabledWhenInvalid": false, "dynamicBindingPathList": [ @@ -14,7 +14,16 @@ "key": "borderRadius" } ], - "dynamicTriggerPathList": [], + "dynamicPropertyPathList": [ + { + "key": "buttonColor" + } + ], + "dynamicTriggerPathList": [ + { + "key": "onClick" + } + ], "isDefaultClickDisabled": true, "isDisabled": false, "isLoading": false, @@ -27,8 +36,9 @@ "mobileRightColumn": 18, "mobileTopRow": 34, "needsErrorInfo": false, - "originalBottomRow": 36, - "originalTopRow": 32, + "onClick": "{{RecurringBooking.toggleDay('friday');}}", + "originalBottomRow": 14, + "originalTopRow": 10, "parentColumnSpace": 8.875, "parentId": "nxgzciev9f", "parentRowSpace": 10, @@ -39,9 +49,9 @@ "responsiveBehavior": "hug", "rightColumn": 61, "text": "Fr", - "topRow": 6, + "topRow": 10, "type": "BUTTON_WIDGET", "version": 1, "widgetId": "nb3yusumzy", - "widgetName": "Button3Copy3" + "widgetName": "FridayButton" } \ No newline at end of file diff --git a/pages/Sitzplätze/widgets/Platzbuchung/RecurringContainer/Button3.json b/pages/Sitzplätze/widgets/Platzbuchung/RecurringContainer/MondayButton.json similarity index 67% rename from pages/Sitzplätze/widgets/Platzbuchung/RecurringContainer/Button3.json rename to pages/Sitzplätze/widgets/Platzbuchung/RecurringContainer/MondayButton.json index 6753b27..ba3bc54 100644 --- a/pages/Sitzplätze/widgets/Platzbuchung/RecurringContainer/Button3.json +++ b/pages/Sitzplätze/widgets/Platzbuchung/RecurringContainer/MondayButton.json @@ -1,9 +1,9 @@ { "animateLoading": true, "borderRadius": "{{appsmith.theme.borderRadius.appBorderRadius}}", - "bottomRow": 10, + "bottomRow": 14, "boxShadow": "none", - "buttonColor": "{{appsmith.theme.colors.primaryColor}}", + "buttonColor": "{{\n appsmith.store.recurringDays?.monday === true\n ? \"#1f5d85\"\n : \"#b8c5ce\"\n}}", "buttonVariant": "PRIMARY", "disabledWhenInvalid": false, "dynamicBindingPathList": [ @@ -14,7 +14,16 @@ "key": "borderRadius" } ], - "dynamicTriggerPathList": [], + "dynamicPropertyPathList": [ + { + "key": "buttonColor" + } + ], + "dynamicTriggerPathList": [ + { + "key": "onClick" + } + ], "isDefaultClickDisabled": true, "isDisabled": false, "isLoading": false, @@ -27,8 +36,9 @@ "mobileRightColumn": 18, "mobileTopRow": 34, "needsErrorInfo": false, - "originalBottomRow": 36, - "originalTopRow": 32, + "onClick": "{{RecurringBooking.toggleDay('monday');}}", + "originalBottomRow": 13, + "originalTopRow": 9, "parentColumnSpace": 8.875, "parentId": "nxgzciev9f", "parentRowSpace": 10, @@ -39,9 +49,9 @@ "responsiveBehavior": "hug", "rightColumn": 12, "text": "Mo", - "topRow": 6, + "topRow": 10, "type": "BUTTON_WIDGET", "version": 1, "widgetId": "94tiejotz5", - "widgetName": "Button3" + "widgetName": "MondayButton" } \ No newline at end of file diff --git a/pages/Sitzplätze/widgets/Platzbuchung/RecurringContainer/RecurringContainer.json b/pages/Sitzplätze/widgets/Platzbuchung/RecurringContainer/RecurringContainer.json index 99dd025..8503fc2 100644 --- a/pages/Sitzplätze/widgets/Platzbuchung/RecurringContainer/RecurringContainer.json +++ b/pages/Sitzplätze/widgets/Platzbuchung/RecurringContainer/RecurringContainer.json @@ -4,12 +4,12 @@ "borderColor": "#E0DEDE", "borderRadius": "{{appsmith.theme.borderRadius.appBorderRadius}}", "borderWidth": "1", - "bottomRow": 60, + "bottomRow": 64, "boxShadow": "{{appsmith.theme.boxShadow.appBoxShadow}}", "children": [ { "borderRadius": "{{appsmith.theme.borderRadius.appBorderRadius}}", - "bottomRow": 120, + "bottomRow": 160, "boxShadow": "{{appsmith.theme.boxShadow.appBoxShadow}}", "canExtend": false, "containerStyle": "none", @@ -83,7 +83,7 @@ "mobileRightColumn": 26, "mobileTopRow": 58, "needsErrorInfo": false, - "originalBottomRow": 60, + "originalBottomRow": 64, "originalTopRow": 48, "parentColumnSpace": 18.56015625, "parentId": "q44lz1f0e4", diff --git a/pages/Sitzplätze/widgets/Platzbuchung/RecurringContainer/RecurringWeeksSelect.json b/pages/Sitzplätze/widgets/Platzbuchung/RecurringContainer/RecurringWeeksSelect.json new file mode 100644 index 0000000..eb0f5ce --- /dev/null +++ b/pages/Sitzplätze/widgets/Platzbuchung/RecurringContainer/RecurringWeeksSelect.json @@ -0,0 +1,65 @@ +{ + "accentColor": "{{appsmith.theme.colors.primaryColor}}", + "animateLoading": true, + "borderRadius": "{{appsmith.theme.borderRadius.appBorderRadius}}", + "bottomRow": 5, + "boxShadow": "none", + "defaultOptionValue": "{{ ((options, serverSideFiltering) => ( \"1\" ))(RecurringWeeksSelect.options, RecurringWeeksSelect.serverSideFiltering) }}", + "dynamicBindingPathList": [ + { + "key": "accentColor" + }, + { + "key": "borderRadius" + }, + { + "key": "sourceData" + }, + { + "key": "defaultOptionValue" + } + ], + "dynamicHeight": "FIXED", + "dynamicPropertyPathList": [ + { + "key": "sourceData" + } + ], + "dynamicTriggerPathList": [], + "isDisabled": false, + "isFilterable": true, + "isLoading": false, + "isRequired": false, + "isVisible": true, + "key": "h9bwm3lkaw", + "labelAlignment": "left", + "labelPosition": "Top", + "labelText": "", + "labelTextSize": "0.875rem", + "labelWidth": 5, + "leftColumn": 5, + "maxDynamicHeight": 9000, + "minDynamicHeight": 4, + "minWidth": 450, + "mobileBottomRow": 6, + "mobileLeftColumn": 16, + "mobileRightColumn": 36, + "mobileTopRow": 0, + "needsErrorInfo": false, + "optionLabel": "value", + "optionValue": "value", + "parentColumnSpace": 10.41759033203125, + "parentId": "nxgzciev9f", + "parentRowSpace": 10, + "placeholderText": "Select option", + "renderMode": "CANVAS", + "responsiveBehavior": "fill", + "rightColumn": 15, + "serverSideFiltering": false, + "sourceData": "{{\n Array.from(\n { length: 10 },\n (_, index) => ({\n label:\n String(index + 1) +\n (\n index === 0\n ? \" Woche\"\n : \" Wochen\"\n ),\n value:\n String(index + 1)\n })\n )\n}}", + "topRow": 1, + "type": "SELECT_WIDGET", + "version": 1, + "widgetId": "6knfmofwsh", + "widgetName": "RecurringWeeksSelect" +} \ No newline at end of file diff --git a/pages/Sitzplätze/widgets/Platzbuchung/RecurringContainer/RecurringWeeksText.json b/pages/Sitzplätze/widgets/Platzbuchung/RecurringContainer/RecurringWeeksText.json new file mode 100644 index 0000000..fb50f7b --- /dev/null +++ b/pages/Sitzplätze/widgets/Platzbuchung/RecurringContainer/RecurringWeeksText.json @@ -0,0 +1,55 @@ +{ + "animateLoading": true, + "borderRadius": "{{appsmith.theme.borderRadius.appBorderRadius}}", + "bottomRow": 5, + "dynamicBindingPathList": [ + { + "key": "truncateButtonColor" + }, + { + "key": "fontFamily" + }, + { + "key": "borderRadius" + }, + { + "key": "text" + } + ], + "dynamicHeight": "AUTO_HEIGHT", + "dynamicTriggerPathList": [], + "fontFamily": "{{appsmith.theme.fontFamily.appFont}}", + "fontSize": "1rem", + "fontStyle": "BOLD", + "isLoading": false, + "isVisible": true, + "key": "wb75ugacfs", + "leftColumn": 15, + "maxDynamicHeight": 9000, + "minDynamicHeight": 4, + "minWidth": 450, + "mobileBottomRow": 52, + "mobileLeftColumn": 39, + "mobileRightColumn": 55, + "mobileTopRow": 48, + "needsErrorInfo": false, + "originalBottomRow": 6, + "originalTopRow": 1, + "overflow": "NONE", + "parentColumnSpace": 18.56015625, + "parentId": "nxgzciev9f", + "parentRowSpace": 10, + "renderMode": "CANVAS", + "responsiveBehavior": "fill", + "rightColumn": 34, + "shouldTruncate": false, + "text": "{{\n (() => {\n const weeks = Number(\n RecurringWeeksSelect.selectedOptionValue || 1\n );\n\n return weeks === 1\n ? \"Woche buchen\"\n : `Wochen buchen`;\n })()\n}}", + "textAlign": "LEFT", + "textColor": "#231F20", + "topRow": 1, + "truncateButtonColor": "{{appsmith.theme.colors.primaryColor}}", + "type": "TEXT_WIDGET", + "version": 1, + "widgetId": "8ry3cxgy91", + "widgetName": "RecurringWeeksText" +} \ No newline at end of file diff --git a/pages/Sitzplätze/widgets/Platzbuchung/RecurringContainer/Select1.json b/pages/Sitzplätze/widgets/Platzbuchung/RecurringContainer/Select1.json deleted file mode 100644 index 2e73a8a..0000000 --- a/pages/Sitzplätze/widgets/Platzbuchung/RecurringContainer/Select1.json +++ /dev/null @@ -1,61 +0,0 @@ -{ - "accentColor": "{{appsmith.theme.colors.primaryColor}}", - "animateLoading": true, - "borderRadius": "{{appsmith.theme.borderRadius.appBorderRadius}}", - "bottomRow": 4, - "boxShadow": "none", - "defaultOptionValue": "Woche", - "dynamicBindingPathList": [ - { - "key": "accentColor" - }, - { - "key": "borderRadius" - } - ], - "dynamicHeight": "FIXED", - "dynamicPropertyPathList": [ - { - "key": "sourceData" - } - ], - "dynamicTriggerPathList": [], - "isDisabled": false, - "isFilterable": false, - "isLoading": false, - "isRequired": false, - "isVisible": true, - "key": "f8k90o33yd", - "labelAlignment": "left", - "labelPosition": "Top", - "labelText": "", - "labelTextSize": "0.875rem", - "labelWidth": 5, - "leftColumn": 29, - "maxDynamicHeight": 9000, - "minDynamicHeight": 4, - "minWidth": 450, - "mobileBottomRow": 30, - "mobileLeftColumn": 1, - "mobileRightColumn": 21, - "mobileTopRow": 23, - "needsErrorInfo": false, - "optionLabel": "name", - "optionValue": "code", - "originalBottomRow": 32, - "originalTopRow": 28, - "parentColumnSpace": 8.875, - "parentId": "nxgzciev9f", - "parentRowSpace": 10, - "placeholderText": "Woche", - "renderMode": "CANVAS", - "responsiveBehavior": "fill", - "rightColumn": 44, - "serverSideFiltering": false, - "sourceData": "[\n {\n \"name\": \"Tag\",\n \"code\": \"Tag\"\n },\n {\n \"name\": \"Woche\",\n \"code\": \"Woche\"\n },\n {\n \"name\": \"Monat\",\n \"code\": \"Monat\"\n }\n]", - "topRow": 0, - "type": "SELECT_WIDGET", - "version": 1, - "widgetId": "2woyknsibz", - "widgetName": "Select1" -} \ No newline at end of file diff --git a/pages/Sitzplätze/widgets/Platzbuchung/RecurringContainer/Select2.json b/pages/Sitzplätze/widgets/Platzbuchung/RecurringContainer/Select2.json deleted file mode 100644 index fc54e54..0000000 --- a/pages/Sitzplätze/widgets/Platzbuchung/RecurringContainer/Select2.json +++ /dev/null @@ -1,61 +0,0 @@ -{ - "accentColor": "{{appsmith.theme.colors.primaryColor}}", - "animateLoading": true, - "borderRadius": "{{appsmith.theme.borderRadius.appBorderRadius}}", - "bottomRow": 4, - "boxShadow": "none", - "defaultOptionValue": "1", - "dynamicBindingPathList": [ - { - "key": "accentColor" - }, - { - "key": "borderRadius" - } - ], - "dynamicHeight": "FIXED", - "dynamicPropertyPathList": [ - { - "key": "sourceData" - } - ], - "dynamicTriggerPathList": [], - "isDisabled": false, - "isFilterable": false, - "isLoading": false, - "isRequired": false, - "isVisible": true, - "key": "f8k90o33yd", - "labelAlignment": "left", - "labelPosition": "Left", - "labelText": "Wiederholen alle", - "labelTextSize": "0.875rem", - "labelWidth": "13", - "leftColumn": 0, - "maxDynamicHeight": 9000, - "minDynamicHeight": 4, - "minWidth": 450, - "mobileBottomRow": 31, - "mobileLeftColumn": 0, - "mobileRightColumn": 18, - "mobileTopRow": 24, - "needsErrorInfo": false, - "optionLabel": "name", - "optionValue": "name", - "originalBottomRow": 32, - "originalTopRow": 28, - "parentColumnSpace": 8.875, - "parentId": "nxgzciev9f", - "parentRowSpace": 10, - "placeholderText": "Select option", - "renderMode": "CANVAS", - "responsiveBehavior": "fill", - "rightColumn": 28, - "serverSideFiltering": false, - "sourceData": "[\n {\n \"name\": \"1\",\n \"code\": \"1\"\n },\n {\n \"name\": \"2\",\n \"code\": \"2\"\n },\n {\n \"name\": \"3\",\n \"code\": \"3\"\n },\n\t{\n \"name\": \"4\",\n \"code\": \"4\"\n },\n\t{\n \"name\": \"5\",\n \"code\": \"5\"\n },\n\t{\n \"name\": \"6\",\n \"code\": \"6\"\n },\n\t{\n \"name\": \"7\",\n \"code\": \"7\"\n },\n\t{\n \"name\": \"8\",\n \"code\": \"8\"\n },\n\t{\n \"name\": \"9\",\n \"code\": \"9\"\n },\n\t{\n \"name\": \"10\",\n \"code\": \"10\"\n }\n]", - "topRow": 0, - "type": "SELECT_WIDGET", - "version": 1, - "widgetId": "0cpd4km3ko", - "widgetName": "Select2" -} \ No newline at end of file diff --git a/pages/Sitzplätze/widgets/Platzbuchung/RecurringContainer/Text3.json b/pages/Sitzplätze/widgets/Platzbuchung/RecurringContainer/Text3.json new file mode 100644 index 0000000..0aec207 --- /dev/null +++ b/pages/Sitzplätze/widgets/Platzbuchung/RecurringContainer/Text3.json @@ -0,0 +1,52 @@ +{ + "animateLoading": true, + "borderRadius": "{{appsmith.theme.borderRadius.appBorderRadius}}", + "bottomRow": 5, + "dynamicBindingPathList": [ + { + "key": "truncateButtonColor" + }, + { + "key": "fontFamily" + }, + { + "key": "borderRadius" + } + ], + "dynamicHeight": "AUTO_HEIGHT", + "dynamicTriggerPathList": [], + "fontFamily": "{{appsmith.theme.fontFamily.appFont}}", + "fontSize": "1rem", + "fontStyle": "BOLD", + "isLoading": false, + "isVisible": true, + "key": "wb75ugacfs", + "leftColumn": 1, + "maxDynamicHeight": 9000, + "minDynamicHeight": 4, + "minWidth": 450, + "mobileBottomRow": 5, + "mobileLeftColumn": 1, + "mobileRightColumn": 17, + "mobileTopRow": 1, + "needsErrorInfo": false, + "originalBottomRow": 6, + "originalTopRow": 2, + "overflow": "NONE", + "parentColumnSpace": 10.41759033203125, + "parentId": "nxgzciev9f", + "parentRowSpace": 10, + "renderMode": "CANVAS", + "responsiveBehavior": "fill", + "rightColumn": 5, + "shouldTruncate": false, + "text": "Für", + "textAlign": "LEFT", + "textColor": "#231F20", + "topRow": 1, + "truncateButtonColor": "{{appsmith.theme.colors.primaryColor}}", + "type": "TEXT_WIDGET", + "version": 1, + "widgetId": "er2hrgk010", + "widgetName": "Text3" +} \ No newline at end of file diff --git a/pages/Sitzplätze/widgets/Platzbuchung/RecurringContainer/Button3Copy2.json b/pages/Sitzplätze/widgets/Platzbuchung/RecurringContainer/ThursdayButton.json similarity index 67% rename from pages/Sitzplätze/widgets/Platzbuchung/RecurringContainer/Button3Copy2.json rename to pages/Sitzplätze/widgets/Platzbuchung/RecurringContainer/ThursdayButton.json index fe541f7..f6ece4e 100644 --- a/pages/Sitzplätze/widgets/Platzbuchung/RecurringContainer/Button3Copy2.json +++ b/pages/Sitzplätze/widgets/Platzbuchung/RecurringContainer/ThursdayButton.json @@ -1,20 +1,29 @@ { "animateLoading": true, "borderRadius": "{{appsmith.theme.borderRadius.appBorderRadius}}", - "bottomRow": 10, + "bottomRow": 14, "boxShadow": "none", - "buttonColor": "{{appsmith.theme.colors.primaryColor}}", + "buttonColor": "{{\n appsmith.store.recurringDays?.thursday === true\n ? \"#1f5d85\"\n : \"#b8c5ce\"\n}}", "buttonVariant": "PRIMARY", "disabledWhenInvalid": false, "dynamicBindingPathList": [ { - "key": "buttonColor" + "key": "borderRadius" }, { - "key": "borderRadius" + "key": "buttonColor" + } + ], + "dynamicPropertyPathList": [ + { + "key": "buttonColor" + } + ], + "dynamicTriggerPathList": [ + { + "key": "onClick" } ], - "dynamicTriggerPathList": [], "isDefaultClickDisabled": true, "isDisabled": false, "isLoading": false, @@ -27,8 +36,9 @@ "mobileRightColumn": 18, "mobileTopRow": 34, "needsErrorInfo": false, - "originalBottomRow": 36, - "originalTopRow": 32, + "onClick": "{{RecurringBooking.toggleDay('thursday');}}", + "originalBottomRow": 14, + "originalTopRow": 10, "parentColumnSpace": 8.875, "parentId": "nxgzciev9f", "parentRowSpace": 10, @@ -39,9 +49,9 @@ "responsiveBehavior": "hug", "rightColumn": 49, "text": "Do", - "topRow": 6, + "topRow": 10, "type": "BUTTON_WIDGET", "version": 1, "widgetId": "chvxisz1qb", - "widgetName": "Button3Copy2" + "widgetName": "ThursdayButton" } \ No newline at end of file diff --git a/pages/Sitzplätze/widgets/Platzbuchung/RecurringContainer/Button3Copy.json b/pages/Sitzplätze/widgets/Platzbuchung/RecurringContainer/TuesdayButton.json similarity index 67% rename from pages/Sitzplätze/widgets/Platzbuchung/RecurringContainer/Button3Copy.json rename to pages/Sitzplätze/widgets/Platzbuchung/RecurringContainer/TuesdayButton.json index 4ae62dc..733934a 100644 --- a/pages/Sitzplätze/widgets/Platzbuchung/RecurringContainer/Button3Copy.json +++ b/pages/Sitzplätze/widgets/Platzbuchung/RecurringContainer/TuesdayButton.json @@ -1,9 +1,9 @@ { "animateLoading": true, "borderRadius": "{{appsmith.theme.borderRadius.appBorderRadius}}", - "bottomRow": 10, + "bottomRow": 14, "boxShadow": "none", - "buttonColor": "{{appsmith.theme.colors.primaryColor}}", + "buttonColor": "{{\n appsmith.store.recurringDays?.tuesday === true\n ? \"#1f5d85\"\n : \"#b8c5ce\"\n}}", "buttonVariant": "PRIMARY", "disabledWhenInvalid": false, "dynamicBindingPathList": [ @@ -14,7 +14,16 @@ "key": "borderRadius" } ], - "dynamicTriggerPathList": [], + "dynamicPropertyPathList": [ + { + "key": "buttonColor" + } + ], + "dynamicTriggerPathList": [ + { + "key": "onClick" + } + ], "isDefaultClickDisabled": true, "isDisabled": false, "isLoading": false, @@ -27,8 +36,9 @@ "mobileRightColumn": 18, "mobileTopRow": 34, "needsErrorInfo": false, - "originalBottomRow": 36, - "originalTopRow": 32, + "onClick": "{{RecurringBooking.toggleDay('tuesday');}}", + "originalBottomRow": 15, + "originalTopRow": 11, "parentColumnSpace": 8.875, "parentId": "nxgzciev9f", "parentRowSpace": 10, @@ -39,9 +49,9 @@ "responsiveBehavior": "hug", "rightColumn": 24, "text": "Di", - "topRow": 6, + "topRow": 10, "type": "BUTTON_WIDGET", "version": 1, "widgetId": "ghkjz9swkj", - "widgetName": "Button3Copy" + "widgetName": "TuesdayButton" } \ No newline at end of file diff --git a/pages/Sitzplätze/widgets/Platzbuchung/RecurringContainer/Button3Copy1.json b/pages/Sitzplätze/widgets/Platzbuchung/RecurringContainer/WednesdayButton.json similarity index 67% rename from pages/Sitzplätze/widgets/Platzbuchung/RecurringContainer/Button3Copy1.json rename to pages/Sitzplätze/widgets/Platzbuchung/RecurringContainer/WednesdayButton.json index 17315df..6f977df 100644 --- a/pages/Sitzplätze/widgets/Platzbuchung/RecurringContainer/Button3Copy1.json +++ b/pages/Sitzplätze/widgets/Platzbuchung/RecurringContainer/WednesdayButton.json @@ -1,9 +1,9 @@ { "animateLoading": true, "borderRadius": "{{appsmith.theme.borderRadius.appBorderRadius}}", - "bottomRow": 10, + "bottomRow": 14, "boxShadow": "none", - "buttonColor": "{{appsmith.theme.colors.primaryColor}}", + "buttonColor": "{{\n appsmith.store.recurringDays?.wednesday === true\n ? \"#1f5d85\"\n : \"#b8c5ce\"\n}}", "buttonVariant": "PRIMARY", "disabledWhenInvalid": false, "dynamicBindingPathList": [ @@ -14,7 +14,16 @@ "key": "borderRadius" } ], - "dynamicTriggerPathList": [], + "dynamicPropertyPathList": [ + { + "key": "buttonColor" + } + ], + "dynamicTriggerPathList": [ + { + "key": "onClick" + } + ], "isDefaultClickDisabled": true, "isDisabled": false, "isLoading": false, @@ -27,8 +36,9 @@ "mobileRightColumn": 18, "mobileTopRow": 34, "needsErrorInfo": false, - "originalBottomRow": 36, - "originalTopRow": 32, + "onClick": "{{RecurringBooking.toggleDay('wednesday');}}", + "originalBottomRow": 15, + "originalTopRow": 11, "parentColumnSpace": 8.875, "parentId": "nxgzciev9f", "parentRowSpace": 10, @@ -39,9 +49,9 @@ "responsiveBehavior": "hug", "rightColumn": 36, "text": "Mi", - "topRow": 6, + "topRow": 10, "type": "BUTTON_WIDGET", "version": 1, "widgetId": "26qk30tfsj", - "widgetName": "Button3Copy1" + "widgetName": "WednesdayButton" } \ No newline at end of file diff --git a/pages/Sitzplätze/widgets/Platzbuchung/BookingStartTime.json b/pages/Sitzplätze/widgets/Platzbuchung/StartTimeSelect.json similarity index 98% rename from pages/Sitzplätze/widgets/Platzbuchung/BookingStartTime.json rename to pages/Sitzplätze/widgets/Platzbuchung/StartTimeSelect.json index 5cefde6..dc84c72 100644 --- a/pages/Sitzplätze/widgets/Platzbuchung/BookingStartTime.json +++ b/pages/Sitzplätze/widgets/Platzbuchung/StartTimeSelect.json @@ -64,5 +64,5 @@ "type": "SELECT_WIDGET", "version": 1, "widgetId": "u53n2l4s54", - "widgetName": "BookingStartTime" + "widgetName": "StartTimeSelect" } \ No newline at end of file diff --git a/pages/Sitzplätze/widgets/Platzbuchung/Text4.json b/pages/Sitzplätze/widgets/Platzbuchung/Text4.json new file mode 100644 index 0000000..edf9ac9 --- /dev/null +++ b/pages/Sitzplätze/widgets/Platzbuchung/Text4.json @@ -0,0 +1,55 @@ +{ + "animateLoading": true, + "borderRadius": "{{appsmith.theme.borderRadius.appBorderRadius}}", + "bottomRow": 92, + "dynamicBindingPathList": [ + { + "key": "truncateButtonColor" + }, + { + "key": "fontFamily" + }, + { + "key": "borderRadius" + }, + { + "key": "text" + } + ], + "dynamicHeight": "AUTO_HEIGHT", + "dynamicTriggerPathList": [], + "fontFamily": "{{appsmith.theme.fontFamily.appFont}}", + "fontSize": "1rem", + "fontStyle": "BOLD", + "isLoading": false, + "isVisible": true, + "key": "wb75ugacfs", + "leftColumn": 39, + "maxDynamicHeight": 9000, + "minDynamicHeight": 4, + "minWidth": 450, + "mobileBottomRow": 56, + "mobileLeftColumn": 43, + "mobileRightColumn": 59, + "mobileTopRow": 52, + "needsErrorInfo": false, + "originalBottomRow": 92, + "originalTopRow": 43, + "overflow": "NONE", + "parentColumnSpace": 18.56015625, + "parentId": "q44lz1f0e4", + "parentRowSpace": 10, + "renderMode": "CANVAS", + "responsiveBehavior": "fill", + "rightColumn": 48, + "shouldTruncate": false, + "text": "{{\n JSON.stringify(\n appsmith.store.bookingFormData || {},\n null,\n 2\n )\n}}", + "textAlign": "LEFT", + "textColor": "#231F20", + "topRow": 43, + "truncateButtonColor": "{{appsmith.theme.colors.primaryColor}}", + "type": "TEXT_WIDGET", + "version": 1, + "widgetId": "y723ubcx1i", + "widgetName": "Text4" +} \ No newline at end of file diff --git a/pages/Sitzplätze/widgets/Platzbuchung/Text5.json b/pages/Sitzplätze/widgets/Platzbuchung/Text5.json new file mode 100644 index 0000000..dda5c93 --- /dev/null +++ b/pages/Sitzplätze/widgets/Platzbuchung/Text5.json @@ -0,0 +1,55 @@ +{ + "animateLoading": true, + "borderRadius": "{{appsmith.theme.borderRadius.appBorderRadius}}", + "bottomRow": 48, + "dynamicBindingPathList": [ + { + "key": "truncateButtonColor" + }, + { + "key": "fontFamily" + }, + { + "key": "borderRadius" + }, + { + "key": "text" + } + ], + "dynamicHeight": "AUTO_HEIGHT", + "dynamicTriggerPathList": [], + "fontFamily": "{{appsmith.theme.fontFamily.appFont}}", + "fontSize": "1rem", + "fontStyle": "BOLD", + "isLoading": false, + "isVisible": true, + "key": "wb75ugacfs", + "leftColumn": 48, + "maxDynamicHeight": 9000, + "minDynamicHeight": 4, + "minWidth": 450, + "mobileBottomRow": 47, + "mobileLeftColumn": 48, + "mobileRightColumn": 64, + "mobileTopRow": 43, + "needsErrorInfo": false, + "originalBottomRow": 47, + "originalTopRow": 43, + "overflow": "NONE", + "parentColumnSpace": 18.56015625, + "parentId": "q44lz1f0e4", + "parentRowSpace": 10, + "renderMode": "CANVAS", + "responsiveBehavior": "fill", + "rightColumn": 64, + "shouldTruncate": false, + "text": "{{\n \"Start: \" +\n appsmith.store.bookingFormData?.startDate +\n \" | Ende: \" +\n appsmith.store.bookingFormData?.endDate\n}}", + "textAlign": "LEFT", + "textColor": "#231F20", + "topRow": 43, + "truncateButtonColor": "{{appsmith.theme.colors.primaryColor}}", + "type": "TEXT_WIDGET", + "version": 1, + "widgetId": "8r5ranska0", + "widgetName": "Text5" +} \ No newline at end of file diff --git a/pages/Sitzplätze/widgets/SeatCalendar/Custom5.json b/pages/Sitzplätze/widgets/SeatCalendar/Custom5.json index 55885c0..6f84418 100644 --- a/pages/Sitzplätze/widgets/SeatCalendar/Custom5.json +++ b/pages/Sitzplätze/widgets/SeatCalendar/Custom5.json @@ -6,7 +6,7 @@ "borderWidth": "1", "bottomRow": 69, "boxShadow": "{{appsmith.theme.boxShadow.appBoxShadow}}", - "defaultModel": "{{\n {\n seatId:\n appsmith.store.selectedSeatId || \"\",\n\n seatName:\n appsmith.store.selectedSeatName || \"\",\n\n events:\n GetSeatBookings.data || []\n }\n}}", + "defaultModel": "{{\n {\n seatId:\n appsmith.store.selectedSeatId || \"\",\n\n seatName:\n appsmith.store.selectedSeatName || \"\",\n\n currentUser:\n appsmith.user.email ||\n appsmith.user.username ||\n \"\",\n\n events:\n GetSeatBookings.data || []\n }\n}}", "dynamicBindingPathList": [ { "key": "theme"