Commit Graph
3 Commits
Author SHA1 Message Date
frommeandClaude Opus 5.5 48e049671e feat: search bar on TYPO3 13, loaded into the static pages, searching by GET
The search bar in the page header is back (SearchbarController, lib.searchBar
and lib.searchBarCollapsed), in the Subpage, SubpageSidebarRight and Detail
layouts as on TYPO3 10; product pages get the collapsed bar and its toggle
button in the main navigation again.

- The bar takes no arguments, so it is the same on every page of a site and
  cacheable. Page types 1706/1707 (/searchbar, /searchbar-collapsed on the
  ep-reisen root, also under /en/) render it alone for the static pages,
  which replace their exported bar with it via htmx. The suffixes have no
  leading slash: on the root page the route path has none, so "/searchbar"
  would never match (as /form and /snowreport do not there either).
- The form sends dateFrom, dateTo, pax, destinationType, destinationUid and
  priceRange by GET to the search page instead of POSTing to processSearch:
  no signed fields and no redirect, and URLs of about 100 characters instead
  of about 870. SearchController reads them (SEARCHBAR_PARAMETERS, excluded
  from the cHash; the results are not cached) and drops anything but a real
  Y-m-d date, which made DateUtility::formatDateRange() throw.
  processSearch is removed.
- The date range label is empty without arguments, so the template no longer
  needs ep:dateRange.

Compared with TYPO3 10: the bar's markup matches apart from the form (open,
collapsed, /en/); seven searches by GET load the same filter settings and
hit counts as the TYPO3 10 POST.

The static pages get the island from the exporter in EP/website, see
.ddev/plans/static-export-searchbar-island.patch (local only).

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-22 15:43:24 +02:00
frommeandClaude Opus 5.5 a598339f67 feat: boot TYPO3 13 with site configs and the theme build
- Site configs for the seven live sites from EP/website, Development
  base variants on *-ep13.ddev.site (DDEV additional_hostnames)
- Webpack Encore build moved to the root, output in
  packages/ep_theme/Resources/Public, public path /_assets/<hash>
- Search UI removed from the kept layouts and partials, as the static
  export already does
- Daytrip room selection and the contingent chain removed (contingent
  import is not ported; no daytrip product has current contingents)
- f:uri.action is final in v13: Uri\AjaxViewHelper invokes it
- Remaining QueryBuilder::execute() and array logicalAnd() calls,
  addRootLineFields, TSFE getData, legacy typo3conf/ext template path
- Rector skips the plugin-to-CType rules; plugins stay list_type

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-21 14:25:01 +02:00
frommeandClaude Opus 5.5 a46918de9d chore: copy ep_products and ep_theme from EP/website@9593cc8
Copied unchanged from public/typo3conf/ext/ of EP/website at
9593cc8631354f8a363d6609de8b7433f669a9a0 (Git-tracked files only).
History stays in the old repository. Only composer.json files are
added so the extensions install as path packages.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-21 14:01:20 +02:00