The static export replaced every EXT:form form with a contact notice. The forms are back, rendered by TYPO3 13 and embedded in the static pages: - Page type 1704 (/<page>/form) renders only the form plugin of a page, inside a .form-island element. Every form posts to that URL (renderingOptions.additionalParams), because on www the page URL is a static file that never reaches TYPO3. htmx swaps the island in place: validation errors, multi-step pages and confirmations. A redirect to an htmx request becomes HX-Redirect (HtmxRedirectMiddleware), so Redirect finishers send the browser to the thank-you page. - While a request runs, an overlay with a spinner (as in MyE&P) covers the form. Styled inside the island: the static pages load the CSS of the TYPO3 10 export. - The bw_captcha image comes from /<page>/captcha for the same reason. Both suffixes are in the PageType enhancer of every site with forms (semesterende gets one with default '' to keep its URLs). - Ported from TYPO3 10: form setup, templates and partials, the MyE&P address finisher, the job application finisher with the MyE&P Team API client (epTeamApi* in secrets.php), the page URL/referrer finisher with ReferrerMiddleware (?ref=), the e-mail layout without the system footer, bw_captcha 5 and form_element_linked_checkbox 6. The address check forms are dropped. - German language packs (EXT:form messages): availableLanguages = de, fetched on every deploy (typo3:language:update). - The checkbox partials passed null to VHS' substring, which PHP 8.5 reports as deprecated. - DDEV no longer turns deprecations into exceptions, matching production: EXT:form's RenderFormValueViewHelper uses null as an array offset for empty optional fields (core bug, also in 13.4.37). The static pages get their placeholders from the exporter in EP/website, see .ddev/plans/static-export-form-islands.patch (local only). Co-Authored-By: Claude Opus 5.5 <[email protected]>
96 lines
2.5 KiB
YAML
96 lines
2.5 KiB
YAML
base: 'https://www.semesterende-skireisen.de'
|
|
baseVariants:
|
|
-
|
|
base: 'https://ser-ep13.ddev.site'
|
|
condition: 'applicationContext == "Development"'
|
|
errorHandling:
|
|
-
|
|
errorCode: 404
|
|
errorHandler: Page
|
|
errorContentSource: 't3://page?uid=2403'
|
|
languages:
|
|
-
|
|
title: Deutsch
|
|
enabled: true
|
|
base: /
|
|
typo3Language: de
|
|
locale: de_DE.UTF-8
|
|
iso-639-1: de
|
|
websiteTitle: ''
|
|
navigationTitle: Deutsch
|
|
hreflang: de
|
|
direction: ''
|
|
flag: de
|
|
languageId: 0
|
|
rootPageId: 2395
|
|
routeEnhancers:
|
|
ProductDetailPlugin:
|
|
type: Extbase
|
|
extension: EpProducts
|
|
plugin: product_detail
|
|
routes:
|
|
-
|
|
routePath: '/detail/{product}'
|
|
_controller: 'Product::detail'
|
|
_arguments:
|
|
product: product
|
|
-
|
|
routePath: '/detail/{product_uid}/{hotel_uid}'
|
|
_controller: 'Product::detail'
|
|
_arguments:
|
|
product_uid: product
|
|
hotel_uid: hotel
|
|
-
|
|
routePath: '/detail/{product}/{hotel}'
|
|
_controller: 'Product::detail'
|
|
_arguments:
|
|
product: product
|
|
hotel: hotel
|
|
-
|
|
routePath: '/detail/{date_from}/{date_to}'
|
|
_controller: 'Product::detail'
|
|
_arguments:
|
|
date_from: dateFrom
|
|
date_to: dateTo
|
|
defaultController: 'Product::detail'
|
|
aspects:
|
|
product:
|
|
type: PersistedAliasMapper
|
|
tableName: tx_epproducts_domain_model_product
|
|
routeFieldName: path_segment
|
|
hotel:
|
|
type: PersistedAliasMapper
|
|
tableName: tx_epproducts_domain_model_hotel
|
|
routeFieldName: path_segment
|
|
product_uid:
|
|
type: PersistedAliasMapper
|
|
tableName: tx_epproducts_domain_model_product
|
|
routeFieldName: uid
|
|
hotel_uid:
|
|
type: PersistedAliasMapper
|
|
tableName: tx_epproducts_domain_model_hotel
|
|
routeFieldName: uid
|
|
date_from:
|
|
type: PassthroughMapper
|
|
date_to:
|
|
type: PassthroughMapper
|
|
requirements:
|
|
product_uid: \d+
|
|
hotel_uid: \d+
|
|
date_from: '\d{4}\-\d{2}\-\d{2}'
|
|
date_to: '\d{4}\-\d{2}\-\d{2}'
|
|
# Only for the form and captcha page types; default '' keeps the URLs without trailing slash
|
|
PageTypeSuffix:
|
|
type: PageType
|
|
default: ''
|
|
index: ''
|
|
map:
|
|
/form: 1704
|
|
/captcha: 3413
|
|
routes:
|
|
-
|
|
route: robots.txt
|
|
type: staticText
|
|
content: "User-agent: *\r\nDisallow: /typo3/\r\nDisallow: /typo3_src/\r\nAllow: /typo3/sysext/frontend/Resources/Public/*\r\n"
|
|
websiteTitle: 'Semsterende Skireisen'
|