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]>
15 lines
529 B
Plaintext
15 lines
529 B
Plaintext
# The search bar in the page header, open (sticky once scrolled past) or collapsed behind the
|
|
# search icon of the main navigation (product and hotel pages)
|
|
lib.searchBar = USER
|
|
lib.searchBar {
|
|
userFunc = TYPO3\CMS\Extbase\Core\Bootstrap->run
|
|
extensionName = EpProducts
|
|
pluginName = searchbar
|
|
settings =< plugin.tx_epproducts.settings
|
|
persistence =< plugin.tx_epproducts.persistence
|
|
view =< plugin.tx_epproducts.view
|
|
}
|
|
|
|
lib.searchBarCollapsed < lib.searchBar
|
|
lib.searchBarCollapsed.settings.collapsed = 1
|