frommeandClaude Opus 5.5 ab2b840dc5 feat: search result teasers list all bookable nights options
Search teasers showed only the nights of the cheapest offer, while
teaser groups list every option. They now list all nights options next
to the cheapest "ab" price, like teaser groups and the watchlist do.

All search filters are applied in SQL before the rows are aggregated,
so the list only holds options matching the active filters (e.g. the
duration filter).

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-29 16:05:45 +01:00
2026-10-29 15:37:36 +01:00
2026-10-29 12:19:59 +01:00
2026-10-27 11:46:36 +01:00
2026-10-21 13:24:40 +02:00
2026-10-29 15:37:36 +01:00

E&P Reisen websites (TYPO3 13)

TYPO3 13 LTS for www.ep-reisen.de and its subsites (ski-boarderweek, snowzone, semesterende-skireisen, ski-wochenenden, …). Products, hotels, regions and dates live in packages/ep_products, templates and assets in packages/ep_theme. Dates, prices and availability come from MyE&P (EP/myep), which in turn reads bpn-connect.

Local setup

DDEV project: ddev start, then ddev composer install and ddev npm install && ddev npm run build. Rebuild the assets after template changes: Tailwind purges classes it does not find in the templates.

Documentation

  • docs/cms-api.md: the API TYPO3 serves to MyE&P and the chatbot (/api/hotel, /api/product, /api/calendar-hotels, /api/content/*).
  • docs/calendars.md: price calendar, Belegungskalender and iCal feed: where the data comes from, caching, and what to check when a calendar does not load.

Deployment

deploy.php (Deployer). A deploy runs extension:setup, resets OPcache and flushes all caches.

License

GPL-2.0 or later

S
Description
No description provided
Readme GPL-2.0
2.7 MiB
0 Stars 4 Watchers 0 Forks
Languages
JavaScript 41.2%
PHP 35.4%
HTML 22.3%
SCSS 0.9%
Shell 0.2%