Commit Graph
1387 Commits
Author SHA1 Message Date
fromme b3541b21fb feat: modernize fe tooling and drop weight 2026-09-22 15:29:34 +02:00
fromme 93ed5c6962 fix: harden encoded filter settings against malformed and stale input 2026-09-22 14:49:04 +02:00
fromme 942724fdd1 feat: derive room type from occupancy instead of a mapping table 2026-09-22 14:47:04 +02:00
frommeandClaude Opus 5 e52f7dcff8 feat: post application forms to MyEP with label-keyed extra values
Forms built in the backend form editor use generated element identifiers
(text-1, multicheckbox-2, ...) that carry no meaning and cannot be renamed
without breaking the other finishers configured on the form. ApplicationApiFinisher
therefore sends two halves: a small mapped core (firstName, lastName, email, ...)
that a developer configures per form and MyEP can rely on, plus every remaining
submitted value keyed by the element label for a human to read.

Each submission also carries where it came from: the form identifier and its
editor-given name, plus the uid and canonical URL of the page it was submitted
from - the same definition is embedded on several pages, so the page is what
distinguishes them. The URL is generated through the site router in the visitor's
language, like AddReferrerFinisher does it.

Labels come from the form definition rather than TranslationService, so the keys
do not shift with the site language. Values are normalized for JSON: dates to
Y-m-d, uploads to the file name, multi-value elements to a list, empty values
dropped, unsupported objects skipped with a log warning.

Like BpnApiFinisher the request failure is only logged, so a MyEP outage never
costs the application mail.

The endpoint (POST applications) does not exist in MyEP yet; the contract handed
over to that team lives in .ddev/plans/MYEP-APPLICATION-ENDPOINT.md. Until it is
built the finisher is registered but attached to no form.

Co-Authored-By: Claude Opus 5 <[email protected]>
2026-09-22 13:42:07 +02:00
fromme 30e531497d fix: default Geoapify base url to Europe 2026-09-22 10:54:41 +02:00
fromme 2cb37e760a fix: serve svg sprite locally for same-origin restrictions 2026-09-22 10:35:58 +02:00
fromme 3ff3251419 feat: integrate with Geaoapify for maps tiles 2026-09-22 10:25:20 +02:00
fromme abcd39107b fix: serve css/js via cdn 2026-09-22 09:32:15 +02:00
fromme 599e3c7ee2 fix: accept 409 from the MyEP contact form endpoint 2026-09-22 08:29:58 +02:00
fromme 6e0479bf22 fix: reduce timeout values for snowreport import 2026-09-15 11:28:14 +02:00
fromme fb8fddf669 fix: make snowreport import type-safe and drop wget shell-out 2026-09-15 11:14:33 +02:00
fromme 9b3550ec40 feat: migrate to native lazy loading of images 2026-09-12 12:08:09 +02:00
fromme e33b57c9f1 feat: disable chatbot in page footer 2026-09-12 12:04:33 +02:00
fromme dc594efee1 chore: remove obsolete vue component 2026-09-12 11:52:46 +02:00
fromme 432d8da350 chore: update redis config 2026-09-12 11:31:29 +02:00
fromme 05ceae5100 fix: simplify generated captchas to improve ux 2026-09-12 11:22:49 +02:00
fromme 0a3e8f59cb fix: repair broken backend search and improve copy traceability 2026-09-10 12:52:55 +02:00
fromme a01d1ba0c5 chore: drop dead description column from product table 2026-09-10 11:50:38 +02:00
fromme 6828e49663 fix: declare importer-written date columns as passthrough 2026-09-10 11:50:38 +02:00
fromme 46001a02ed fix: add TCA default 0 to relation selects for MySQL strict mode 2026-09-10 10:17:10 +02:00
fromme 8dad782603 feat: integrate with redis for improved performance 2026-09-08 18:27:00 +02:00
fromme 0e6a65dfa0 feat: integrate with bunny.net cdn for images 2026-09-05 10:47:00 +02:00
fromme 8f421da599 fix: prevent empty buttons in link panel content element 2026-09-03 15:51:38 +02:00
fromme 07b42c9334 feat: import buspro xml files from remote sftp source 2026-09-03 10:02:36 +02:00
fromme 20e56aab1f feat: disable page header and breadcrumb in concept detail plugin 2026-09-01 11:45:07 +02:00
fromme d7219ec341 feat: remove date constraints from price calendar 2026-08-26 13:33:10 +02:00
fromme 0bdc6c873b feat: explicit icon label map for accommodation booking api 2026-08-20 14:43:09 +02:00
fromme baf7b5d94a feat: improved caching of api-backed content 2026-08-20 12:11:58 +02:00
fromme 87e6857bff chore: refactor and cleanup template 2026-08-19 17:50:41 +02:00
fromme 47de6027c8 fix: hide groups price calendar on winter products 2026-08-19 17:34:27 +02:00
fromme 3178eee8a0 feat: remove obsolete buttons/links from product detail page 2026-08-19 17:03:29 +02:00
fromme 229c675e4d feat: remove obsolete plugins for hotel groups prices 2026-08-19 14:53:22 +02:00
fromme 22072b4a25 feat: remove obsolete fields from backend form for hotel groups prices 2026-08-17 15:21:01 +02:00
fromme 9fc490fabf fix: use currency value provided by api response for the calendar 2026-08-17 08:40:41 +02:00
fromme 5396ab941b feat: replace button labels 2026-08-17 08:40:41 +02:00
fromme e8154ebba1 fix: remove exstraneous border below tables 2026-08-17 08:40:41 +02:00
Björn Fromme 7342db4afa feat: groups bookings calendar 2026-08-17 08:40:41 +02:00
fromme 843b963195 chore: replace logo files with optimized versions 2026-08-13 11:37:08 +02:00
fromme 61b5e1a2d3 fix: provide required typoscript to content element 2026-08-13 11:12:40 +02:00
Björn Fromme 83b3cbea4d feat: extended api endpoint for hotel data consumed by myep 2026-07-16 08:41:11 +02:00
Björn Fromme 11fda126a8 feat: hide 'show all' button for less than 3 teasers
addresses #869e545n0
2026-07-15 15:22:23 +02:00
Björn Fromme 1fcca90969 feat: disable included services list below dates table
addresses #869e50jt1
2026-07-15 12:41:21 +02:00
Björn Fromme 2f58b02928 feat: additional hotel properties
addresses #86965w970
2026-07-15 10:52:08 +02:00
Björn Fromme 9c5a6747bc feat: consolidate event search teasers
addresses #869e4n8py
2026-07-14 16:29:21 +02:00
Björn Fromme 12bcb9360c feat: include concept popup data in teaser data for eligibility check 2026-07-14 14:31:46 +02:00
Björn Fromme dc44a8ca6d feat: add insurance revocation link to page footer 2026-07-14 10:09:07 +02:00
Björn Fromme 53d9a36183 fix: always show concept in product teaser 2026-07-09 14:30:08 +02:00
Björn Fromme b7e371f60e fix: correct nesting of teasers in grid 2026-07-09 14:25:44 +02:00
Björn Fromme 6372030ee6 feat: adjust faq styles 2026-07-01 17:22:51 +02:00
Björn Fromme 51fa9fac62 feat: additional api endpoint for hotel data 2026-06-27 15:47:42 +02:00