Bug #89422
closedrouteEnhancers + pagination
0%
Description
Fluid widget pagination links don't keep the initial query parameters if they were converted by the routeEnhancer.
https://github.com/TYPO3/TYPO3.CMS/blob/9.5/typo3/sysext/fluid/Classes/ViewHelpers/Widget/LinkViewHelper.php
GetWidgetUri() adds query parameters to a current query but the current query has already been modified by the route enhancer and doesn't keep query params as expected by uriBuilder here. Might be I'm missing something?
For example:
1. List of persons
2. Detailed view for each person
3. Paginated list of additional records for that person in a detailed view
Route enhancer:
routeEnhancers:
DoctorsPlugin:
type: Extbase
extension: Doctors
plugin: List
routes:
- { routePath: '/', _controller: 'Person::index'}
- { routePath: '/{identifier}', _controller: 'Person::index', _arguments: { identifier: 'doctor' } }
- { routePath: '/{identifier}/page-{page}', _controller: 'Person::index', _arguments: { identifier: 'doctor', page: '@widget_0/currentPage' } }
defaultController: 'Person::index'
defaults:
page: '0'
aspects:
identifier:
type: PersistedAliasMapper
tableName: tx_doctors_person
routeFieldName: slug
page:
type: StaticRangeMapper
start: '1'
end: '25'
Updated by Oliver Hader almost 3 years ago
All fluid widgets have been removed in TYPO3 v11.0 - see https://docs.typo3.org/c/typo3/cms-core/main/en-us/Changelog/11.0/Breaking-92529-AllFluidWidgetFunctionalityRemoved.html
As a special addition, since LinkViewHelper
utilized addQueryString
internally, I'd like leave a hint to https://typo3.org/security/advisory/typo3-psa-2021-003 ("TYPO3-PSA-2021-003: Mitigation of Cache Poisoning Caused by Untrusted URL Query Parameters").
Updated by Oliver Hader almost 3 years ago
- Related to Task #92529: Remove fluid widgets added