diff --git a/config/sites/ep-reisen/config.yaml b/config/sites/ep-reisen/config.yaml index 3fa23530..e14f6d68 100644 --- a/config/sites/ep-reisen/config.yaml +++ b/config/sites/ep-reisen/config.yaml @@ -3,6 +3,9 @@ baseVariants: - base: 'https://ep-reisen-10.ddev.site' condition: 'applicationContext == "Development"' + - + base: 'https://staging.ep-reisen.de' + condition: 'applicationContext == "Production/Staging"' disableStaticFileCache: false errorHandling: - @@ -165,39 +168,24 @@ routeEnhancers: type: PersistedAliasMapper tableName: tx_epproducts_domain_model_product routeFieldName: path_segment - TravelinfoPlugin: + StaticResultsPlugin: type: Extbase extension: EpProducts - plugin: travelinfo + plugin: staticresult limitToPages: - - 2736 + - 1838 routes: - - routePath: '/{travelinfo}/{traveldate}' - _controller: 'Travelinfo::index' + routePath: '/{filter_settings}' + _controller: 'Search::staticresult' _arguments: - travelinfo: travelinfo - traveldate: travelDate - - - routePath: '/{busproid}' - _controller: 'Travelinfo::myep' - _arguments: - busproid: busProId - defaultController: 'Travelinfo::index' - aspects: - travelinfo: - type: PersistedAliasMapper - tableName: tx_epproducts_domain_model_travelinfo - routeFieldName: path_segment - traveldate: - type: PassthroughMapper - busproid: - type: PassthroughMapper + filter_settings: encodedFilterSettings + defaultController: 'Search::staticresult' requirements: - travelinfodate: '\d{4}\-\d{2}\-\d{2}' - busproid: '\d+' - defaults: - travelinfodate: '2000-01-01' + filter_settings: '[A-Z\d%\-\|;]+' + aspects: + filter_settings: + type: PassthroughMapper ContingentsIcalPlugin: type: Extbase extension: EpProducts @@ -259,6 +247,37 @@ routeEnhancers: type: PersistedAliasMapper tableName: tx_epproducts_domain_model_product routeFieldName: uid + TravelinfoPlugin: + type: Extbase + extension: EpProducts + plugin: travelinfo + limitToPages: + - 2736 + routes: + - + routePath: '/{travel_info}/{travel_date}' + _controller: 'Travelinfo::index' + _arguments: + travel_info: travelinfo + travel_date: travelDate + - + routePath: '/{buspro_id}' + _controller: 'Travelinfo::myep' + _arguments: + buspro_id: busProId + defaultController: 'Travelinfo::index' + aspects: + travel_info: + type: PersistedAliasMapper + tableName: tx_epproducts_domain_model_travelinfo + routeFieldName: path_segment + travel_date: + type: PassthroughMapper + buspro_id: + type: PassthroughMapper + requirements: + travel_date: '\d{4}\-\d{2}\-\d{2}|\d{2}\d{2}\d{4}' + buspro_id: '\d+' PageTypeSuffix: type: PageType default: / @@ -271,9 +290,10 @@ routeEnhancers: .ical: 1710 sitemap.xml: 1533906435 yoast-snippetpreview.json: 1480321830 + /pxa: 7378121 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" + content: "User-agent: *\r\nDisallow: /typo3/\r\nDisallow: /typo3_src/\r\nDisallow: /ajax/\r\nAllow: /typo3/sysext/frontend/Resources/Public/*\r\n" websiteTitle: '' diff --git a/public/typo3conf/ext/ep_products/Classes/Controller/TravelinfoController.php b/public/typo3conf/ext/ep_products/Classes/Controller/TravelinfoController.php index 1367dc85..2819ac8b 100644 --- a/public/typo3conf/ext/ep_products/Classes/Controller/TravelinfoController.php +++ b/public/typo3conf/ext/ep_products/Classes/Controller/TravelinfoController.php @@ -59,6 +59,10 @@ class TravelinfoController extends ActionController { $product = $travelinfo->getProduct(); + if (preg_match('/^\d{2}\d{2}\d{4}$/', $travelDate)) { + $travelDate = (\DateTimeImmutable::createFromFormat('dmY', $travelDate))->format('Y-m-d'); + } + /** @var Date $date */ $date = $this->dateRepository->findForProductAndDate($product, $travelDate)->getFirst(); $hasCourses = null !== $date && 0 < count($date->getServicesGeneral('KUR'));