Björn Fromme
c510cbf590
feat: auto-booking services
...
addresses #869cfcptv
2026-03-16 20:24:58 +01:00
Björn Fromme
6d9265de0f
fix: restore unintended file changes after master flatten rewrite
2026-03-16 14:15:51 +01:00
Björn Fromme
49ea562322
fix: enforce submit-time immutability, scope booking cache per user
2026-03-16 12:03:00 +01:00
Björn Fromme
37c839600e
fix: reduce mutability data cache ttl to avoid staleness
...
addresses #869cdzmkq
2026-03-16 12:03:00 +01:00
Björn Fromme
cef2e4fa49
fix: ensure mutability is accounted for when restoring drafts
...
addresses #869cdzmkq
2026-03-16 12:03:00 +01:00
Björn Fromme
11ff2b9084
fix: assign mandatory services when applying dummy data
2026-03-16 12:03:00 +01:00
Björn Fromme
0e644260b6
feat: update wording
2026-03-16 12:03:00 +01:00
Björn Fromme
33609ab534
feat: shortened and filename-safe request ids
2026-03-16 12:03:00 +01:00
Björn Fromme
1cc7a025a1
fix: ensure pickups node exists in api payload
2026-03-16 12:03:00 +01:00
Björn Fromme
709b0ff61e
fix: ensure drop-offs are submitted when same as pickups
2026-03-16 12:03:00 +01:00
Björn Fromme
0d7d90a442
feat: anonymization command for request/response XML dumps
2026-03-16 12:03:00 +01:00
Björn Fromme
a7c3064df6
feat: adopt new pickups planning payload JSON structure
2026-03-16 12:03:00 +01:00
Björn Fromme
b752256bda
fix: validate mandatory services selection
2026-03-16 12:03:00 +01:00
Björn Fromme
474d171779
fix: correctly validate pickup selection
...
closes #869c94jqn
2026-03-16 12:03:00 +01:00
Björn Fromme
51ce9b6e45
fix: don't restore selections from draft for immutable fields
2026-03-16 12:03:00 +01:00
Björn Fromme
9cef24f827
fix: enforce mutability checks for all fields
2026-03-16 12:03:00 +01:00
Björn Fromme
e6880b7fed
chore: remove dead code
2026-03-16 12:03:00 +01:00
Björn Fromme
40c0042158
feat: use normalized checkbox values in field handlers
2026-03-16 12:03:00 +01:00
Björn Fromme
1670b8b8d2
fix: avoid selection trap for mandatory services with age constraints
2026-03-16 12:03:00 +01:00
Björn Fromme
3644b935fd
fix: always fill-in empty participants names when submitting to api
2026-03-16 12:03:00 +01:00
Björn Fromme
44a9de7db7
fix: correct sort order of pickups and drop-offs
2026-03-16 12:03:00 +01:00
Björn Fromme
f99a2d99a2
fix: show pickup select field for outbound bus travel only
2026-03-16 12:03:00 +01:00
Björn Fromme
f795a3ea21
feat: selectable drop-offs for inbound bus travel
2026-03-16 12:03:00 +01:00
Björn Fromme
6ddd0b00bd
fix: handle empty api responses more gracefully
2026-03-16 12:03:00 +01:00
Björn Fromme
f673bc59d0
fix: catch unexpected api response for personal data
2026-03-16 12:03:00 +01:00
Björn Fromme
78b925daa6
fix: backward compatibility for new session format
2026-03-16 12:03:00 +01:00
Björn Fromme
4e05c94912
fix: correctly determine file size and avoid type mismatch
2026-03-16 12:03:00 +01:00
Björn Fromme
c7b70dbd56
feat: dummy data fill
...
closes #869c3khk0
2026-03-16 12:03:00 +01:00
Björn Fromme
6fd5a218a3
feat: reduce session payload
2026-03-16 12:03:00 +01:00
Björn Fromme
ded904fac8
fix: correct room assignment and count
...
closes #869c2jnzr
2026-03-16 12:03:00 +01:00
Björn Fromme
06f53ba6eb
feat: fill default names for canceled participants in agency bookings
2026-03-16 12:03:00 +01:00
Björn Fromme
1f27c744d2
chore: code cleanup
2026-03-16 12:02:59 +01:00
Björn Fromme
bbc011ddb9
feat: update personal data of canceled participants as well
...
addresses #869bze0kq
2026-03-16 12:02:59 +01:00
Björn Fromme
f9d420fecd
feat: revert allow updating room assignments in edit mode
2026-03-16 12:02:59 +01:00
Björn Fromme
f46cc59041
fix: allow updating room assignments in edit mode
2026-03-16 12:02:59 +01:00
Björn Fromme
380b1ed329
chore: streamline namespacing
2026-03-16 12:02:59 +01:00
Björn Fromme
19031dba99
fix: enforce profile completion of applicant in all situations
2026-03-16 12:02:59 +01:00
Björn Fromme
028db7a7ee
fix: ensure complete participant data even when canceled
2026-03-16 12:02:59 +01:00
Björn Fromme
e5803860df
feat: remove street from hotel address in sidebar
...
addresses #869bwq1vh
2026-03-16 12:02:59 +01:00
Björn Fromme
02ebddc34a
feat: require all personal data fields for registration
2026-03-16 12:02:59 +01:00
Björn Fromme
3957f6bd09
feat: tracking integration with GTM and CMP
2026-03-16 12:02:59 +01:00
Björn Fromme
11ab98b3d8
feat: domain-based theme-detection
2026-03-16 12:02:59 +01:00
Björn Fromme
8ca105966d
fix: don't normalize hotel and product codes when fetching cms data
2026-03-16 12:02:59 +01:00
Björn Fromme
a444940db2
feat: display error codes in admin overview
2026-03-16 12:02:59 +01:00
Björn Fromme
afe5aef9f7
feat: error-codes in flash messages to reference log entries
2026-03-16 12:02:59 +01:00
Björn Fromme
21a3e8fafc
feat: user-friendly error messages on login
2026-03-16 12:02:59 +01:00
Björn Fromme
26bbba5a2e
feat: streamlined flash messages
2026-03-16 12:02:59 +01:00
Björn Fromme
b68d5c9398
fix: revert pickup pricing to match current BusPro behavior
...
Reverts split pricing calculation to use outbound-only pricing,
matching BusPro's current behavior where pickup is only charged when
outbound transportation is BUS.
- Use pickup->price directly instead of calculateEffectivePrice()
- PKW+BUS scenario now correctly charges €0 (matches BusPro loophole)
- priceOutbound/priceInbound remain populated for future activation
- Updated documentation with current behavior and future plan
2026-03-16 12:02:59 +01:00
Björn Fromme
c1425f0562
feat: extensible participant status determination for booking creation
...
Adds a rule-based system to determine participant status in CREATE
payloads. Participants selecting a 'Begleitperson' service now receive
status 'O' (Option), all others default to 'F' (Final).
- Add ParticipantStatusRuleInterface for defining status rules
- Add ParticipantStatusRuleRegistry for priority-based rule evaluation
- Add ChaperonServiceStatusRule for Begleitperson detection
- Integrate status evaluation into BookingPayloadBuilder
2026-03-16 12:02:59 +01:00
Björn Fromme
0cac2969ae
feat: log contact form submissions
2026-03-16 12:02:59 +01:00