Björn Fromme
2776429639
fix: preserve selected services from booking even when unavailable
...
When editing a booking, services that were previously booked but are no
longer available in the travel catalog were being dropped. This caused
API error 650 ("Anzahl Leistung stimmt nicht mit Teilnehmerzuordnung
überein") because the service participant counts no longer matched.
The fix ensures that in edit mode, booked services are merged with
travel data services in both:
- Form rendering (ParticipantFieldOptionsProvider): so checkboxes appear
- Handler validation (AbstractParticipantFieldHandler): so selections
are accepted
This allows users to keep their existing service selections or
deliberately replace them with other available options. Create mode
remains unchanged.
2026-01-19 15:51:39 +01:00
Björn Fromme
3046aad94d
fix: account for discounts applied by bpn api in validation request
2026-01-14 12:47:25 +01:00
Björn Fromme
00803b2e73
feat: always load fresh api data when starting to edit booking
2026-01-13 13:16:35 +01:00
Björn Fromme
3d4d88e986
feat: xlsx export of booking edit draft data for admins
2026-01-13 10:22:03 +01:00
Björn Fromme
195af95995
feat: integrate with easy admin bundle
2026-01-11 13:24:07 +01:00
Björn Fromme
d95d0a8930
feat: streamlined booking number property
2026-01-10 12:12:54 +01:00
Björn Fromme
6fca40963d
wip: integrate with easy admin bundle
2026-01-10 11:35:16 +01:00
Björn Fromme
fe2268c897
feat: cleanup, log successful bookings
2026-01-09 10:05:21 +01:00
Björn Fromme
0992c05539
fix: don't update booking session and draft on form refresh
...
Each form refresh would create a draft even for users that just explore
booking options causing stale draft records in the database.
2026-01-09 09:22:18 +01:00
Björn Fromme
59b08ed098
fix: update draft together with session on refresh
2026-01-08 08:38:21 +01:00
Björn Fromme
936004bc2d
fix: show actual error message
2026-01-07 20:30:58 +01:00
Björn Fromme
2f4184f60f
fix: avoid float rounding errors when comparing
2026-01-07 18:46:28 +01:00
Björn Fromme
5f33f82b8b
fix: redirect to dashboard as default when logged in
2026-01-07 10:15:27 +01:00
Björn Fromme
1c1766bbd4
fix: apply correct return type and response handling
2026-01-06 14:05:51 +01:00
Björn Fromme
96205c14db
fix: only invalidate cache and remove draft on successful edit
2026-01-06 13:53:49 +01:00
Björn Fromme
7ec4562064
chore: code cleanup
2026-01-06 12:38:51 +01:00
Björn Fromme
1eb1e9f02f
fix: invalidate booking data caches after updating personal data
2026-01-06 12:24:07 +01:00
Björn Fromme
2a13a62291
feat: remove cancel confirmation since obsolete because of drafts
2026-01-06 10:44:30 +01:00
Björn Fromme
60c1459902
feat: automatic saving of drafts when editing bookings
2026-01-06 10:29:17 +01:00
Björn Fromme
c9426eff3b
fix: catch travel data not found errors to show proper flash message
2025-12-19 17:54:25 +01:00
Björn Fromme
5831294d33
chore: reduce noise in logs
2025-12-17 16:44:11 +01:00
Björn Fromme
073bbdc0f8
feat: add logging to api endpoint
2025-12-17 16:34:57 +01:00
Björn Fromme
59b9a42009
feat: loading indicator on initial page load
2025-12-16 13:44:25 +01:00
Björn Fromme
14fe9bd44f
feat: load availability data once per booking session
2025-12-16 13:30:45 +01:00
Björn Fromme
8904e1c7fe
feat: log pickups planning data api calls
2025-12-16 12:17:41 +01:00
Björn Fromme
42f17db542
feat: extended oauth2 user info and refactored authenticator
2025-12-12 19:57:34 +01:00
Björn Fromme
79e5a3c12d
feat: adjust oauth2 implementation for TYPO3 backend login
2025-12-12 16:31:32 +01:00
Björn Fromme
e9c1dd8b9d
feat: basic themes for event sites
2025-12-12 13:13:36 +01:00
Björn Fromme
b1ff6989ec
feat: api endpoints for pickups planning
2025-12-12 09:44:38 +01:00
Björn Fromme
05c769bab2
feat: use query parameters for booking urls
2025-12-11 16:14:31 +01:00
Björn Fromme
f54f66cd32
fix: reset room assignments after updated selection if required
2025-12-11 11:27:48 +01:00
Björn Fromme
109f36e7f5
chore: simplify parameter handling
2025-12-10 13:57:48 +01:00
Björn Fromme
0e9c5e6e1a
feat: configurable choices for body dimensions
...
closes #8697phk21
2025-12-10 13:48:47 +01:00
Björn Fromme
2b8046b416
feat: re-implement contact form submissions api endpoint for website
2025-12-10 09:29:19 +01:00
Björn Fromme
150998e120
fix: ensure flash message is displayed after redirect
2025-12-09 12:55:23 +01:00
Björn Fromme
3527be9c29
feat: various improvements in styles and layout
2025-12-09 11:20:43 +01:00
Björn Fromme
e4aad8a456
feat: load cms data early to display image on login page
2025-12-08 17:39:29 +01:00
Björn Fromme
cd2765bab5
feat: improved error handling and redirect on invalid session
2025-12-08 16:00:02 +01:00
Björn Fromme
390ee81675
feat: indicate incomplete participant data in cards
2025-12-08 15:59:35 +01:00
Björn Fromme
118f86b2a0
feat: increase availability cache ttl and ensure fresh data when entering form
2025-12-08 14:57:12 +01:00
Björn Fromme
20a67e9b96
feat: optional return url
2025-12-07 18:47:18 +01:00
Björn Fromme
67491a7f68
fix: remove obsolete htmx attributes from forms
2025-12-07 15:03:44 +01:00
Björn Fromme
21600dc2d6
feat: implement hx-boost for reliable loading indication
2025-12-07 14:11:50 +01:00
Björn Fromme
bfb1a04ea0
feat: implement screendesign
2025-12-06 15:02:33 +01:00
Björn Fromme
696800aafd
feat: refactoring and cleanup
2025-12-06 15:02:13 +01:00
Björn Fromme
f4691ec67e
feat: finalize voucher handling and discount display in summary and overview
2025-11-26 17:29:15 +01:00
Björn Fromme
9167c84b4c
fix: clear target path when canceling booking flow
2025-11-25 17:34:10 +01:00
Björn Fromme
ecc4741f56
feat: correct determination of inquiry status and conditional voucher field display
2025-11-25 16:41:25 +01:00
Björn Fromme
f33e55f201
feat: correct handling of vouchers
2025-11-24 10:20:21 +01:00
Björn Fromme
9d28d2f102
feat: improved promotional and purchase vouchers
2025-11-21 12:43:51 +01:00