- Sep 29, 2018
-
-
Benni Mack authored
Page-based routing can now be configured within a site configuration to add so-called "route enhancers" which allow to add more placeholders to a route for a page. There are three Enhancers that TYPO3 now ships with: - SimpleEnhancer - PluginEnhancer - ExtbasePluginEnhancer It is also possible to add custom enhancers by third- party extensions. Each placeholder within an enhancer can receive a so-called "Aspect", usually used for mapping speaking values instead of IDs, or month-names in an archive link, and "modifiers" to modify a placeholder. The simple enhancer transfers a link parameter, previously maybe used to add a `&product=123`, which will now result into `/product/123` for a page. PluginEnhancer adds a namespace, common for simple plugins or Pi-Based plugins, and the ExtbasePluginEnhancer adds logic for multiple route variants to be added, depending on the controller/action combinations. Aspects are processors / modifiers / mappers to transfer a placeholder value back & forth to make each placeholder value more "speaking". TYPO3 Core ships with the following aspects: * LocaleModifier (for localized path segments) * StaticValueMapper (for path segments with a static list) * StaticRangeMapper (for pagination) * PersistedAliasMapper (for slug fields) * PersistedPatternMapper (for database records without slug fields) Routing now returns a so-called "PageArguments" object which is then used for evaluating site-based URL handling and the cHash calculation. It is highly discouraged to access _GET or _POST variables within any kind of code now, instead the PSR-7 request object should be used as much as possible. Releases: master Resolves: #86365 Change-Id: I77e001a5790f1ab3bce75695ef0e1615411e2bd9 Reviewed-on: https://review.typo3.org/58384 Tested-by:
TYPO3com <no-reply@typo3.com> Reviewed-by:
Susanne Moog <susanne.moog@typo3.org> Tested-by:
Susanne Moog <susanne.moog@typo3.org> Reviewed-by:
Oliver Hader <oliver.hader@typo3.org> Tested-by:
Oliver Hader <oliver.hader@typo3.org>
-
- Sep 17, 2018
-
-
Benni Mack authored
With PSR-15 it is not necessary to use any custom hooks during the frontend request setup process anymore, as middlewares are flexible enough to manipulate anything people want to do. On top, various middlewares are also declared internal as the usages are not really necessary to be publically exposed. - typo3/cms-core/normalized-params-attribute - typo3/cms-backend/legacy-document-template - typo3/cms-backend/output-compression - typo3/cms-backend/response-headers - typo3/cms-frontend/timetracker - typo3/cms-frontend/preprocessing - typo3/cms-frontend/eid - typo3/cms-frontend/content-length-headers - typo3/cms-frontend/tsfe - typo3/cms-frontend/output-compression - typo3/cms-frontend/prepare-tsfe-rendering - typo3/cms-frontend/shortcut-and-mountpoint-redirect Resolves: #86279 Releases: master Change-Id: I14fbd7b026acdc84fb23ca43cd395de5b7b9c4b6 Reviewed-on: https://review.typo3.org/58253 Reviewed-by:
Andreas Fernandez <a.fernandez@scripting-base...>
-
- Sep 13, 2018
-
-
Benni Mack authored
The config.defaultGetVars is executed and $_GET is modified, but not the middleware where this method is called. In order to also modify the middleware's request object, the option config.defaultGetVars is also evaluted again in the PSR-15 middleware. Resolves: #86241 Related: #86046 Releases: master Change-Id: I2238d93b4974a40b2228c099cef7c8a04bd6cf74 Reviewed-on: https://review.typo3.org/58266 Tested-by:
TYPO3com <no-reply@typo3.com> Reviewed-by:
Daniel Sattler <sattler@b13.de> Tested-by:
Daniel Sattler <sattler@b13.de> Reviewed-by:
Daniel Goerz <daniel.goerz@posteo.de> Tested-by:
Daniel Goerz <daniel.goerz@posteo.de> Reviewed-by:
Wouter Wolters <typo3@wouterwolters.nl> Tested-by:
Wouter Wolters <typo3@wouterwolters.nl>
-
- Jul 27, 2018
-
-
Benni Mack authored
The method only does one line of code, and is now instantiated if needed. Resolves: #85666 Releases: master Change-Id: Id5df0ecb3f887743ea1167829c9cca69aef501e4 Reviewed-on: https://review.typo3.org/57693 Reviewed-by:
Benni Mack <benni@typo3.org> Tested-by:
Benni Mack <benni@typo3.org> Tested-by:
TYPO3com <no-reply@typo3.com> Reviewed-by:
Wouter Wolters <typo3@wouterwolters.nl> Reviewed-by:
Susanne Moog <susanne.moog@typo3.org> Tested-by:
Susanne Moog <susanne.moog@typo3.org> Reviewed-by:
Andreas Fernandez <a.fernandez@scripting-base.de> Tested-by:
Andreas Fernandez <a.fernandez@scripting-base.de>
-
- May 31, 2018
-
-
Tymoteusz Motylewski authored
The concept for custom UrlHandlers, introduced in TYPO3 v7 for extracting JumpURL into a TER extension has been deprecated in favor of PSR-15. These could be registered via $GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['urlProcessing']['urlHandlers'] The methods related to that functionality have been deprecated. - $TSFE->initializeRedirectUrlHandlers() - $TSFE->redirectToExternalUrl() However, the core-internal calls have been marked with a property to ensure that no deprecation warning is triggered, but the functionality can be kept. Resolves: #85124 Releases: master Change-Id: Ie49d7200618d2b8ffdd5394ea9c649c123719b07 Reviewed-on: https://review.typo3.org/57096 Tested-by:
TYPO3com <no-reply@typo3.com> Reviewed-by:
Christian Kuhn <lolli@schwarzbu.ch> Tested-by:
Christian Kuhn <lolli@schwarzbu.ch> Reviewed-by:
Helmut Hummel <typo3@helhum.io> Tested-by:
Helmut Hummel <typo3@helhum.io>
-
- May 11, 2018
-
-
Benni Mack authored
A lot of functionality has been migrated from TypoScriptFrontendController into middlewares - functionality that has now no direct influence in the so-called controller of the frontend (TSFE) anymore. The respective methods are never called anymore from TYPO3 Core, and extensions that bootstrap their own frontend should ensure that the respective Middlewares are boot up and called, e.g. via custom stacks or just by setting up the "frontend" middleware stack. The following methods are now deprecated: - connectToDB() - checkAlternativeIdMethods() - initializeBackendUser() - handleDataSubmission() - setCSS() - convPOSTCharset() Additionally, there are some methods in TSFE which have been marked as "internal" but had the PHP visibility "public", which were now migrated to "protected". - getPageAndRootline() - checkRootlineForIncludeSection() - setSysPageWhereClause() - checkAndSetAlias() - getHash() - getLockHash() - setUrlIdToken() Resolves: #84965 Releases: master C...
-
- May 10, 2018
-
-
Benni Mack authored
For historical purposes, TimeTracker->push() is called with an empty string in the second parameter, however, as this parameter is optional and set to '' by default as well, the code readability can be improved by just using the first parameter when using TimeTracker->push() Resolves: #84964 Releases: master Change-Id: I37a338268f9b2df9f2a98414075d207b63dc542e Reviewed-on: https://review.typo3.org/56913 Tested-by:
TYPO3com <no-reply@typo3.com> Reviewed-by:
Wouter Wolters <typo3@wouterwolters.nl> Tested-by:
Wouter Wolters <typo3@wouterwolters.nl> Reviewed-by:
Markus Klein <markus.klein@typo3.org> Tested-by:
Markus Klein <markus.klein@typo3.org>
-
- May 09, 2018
-
-
Helmut Hummel authored
The additional isINTincScript check stems from the time where this code was in a separate file, which was included two times and page generation should be skipped for the second inclusion. As INT scripts are only generated during page rendering (or when fetching the page from cache) we can safely remove this condition now. Additionally, we can now easily get rid of the elseif and move the page rendering preparation directly after the same condition is checked later in the code flow. This is fine, because this code does not need to be executed before the lock is released. Last but not least we clean up admin panel messages to clearly distinguish between page generation and rendering preparation. As this is a pure non breaking cleanup, this can safely go into 8.7 branch as well. Resolves: #84945 Releases: master, 8.7 Change-Id: If12b82a549d4cc47619c46f73c5423df70621b1b Reviewed-on: https://review.typo3.org/56884 Reviewed-by:
Daniel Goerz <ervaude@gmail.com> Tested-by:
TYPO3com <no-reply@typo3.com> Reviewed-by:
Frank Naegler <frank.naegler@typo3.org> Tested-by:
Frank Naegler <frank.naegler@typo3.org> Reviewed-by:
Markus Klein <markus.klein@typo3.org> Tested-by:
Markus Klein <markus.klein@typo3.org>
-
- May 04, 2018
-
-
Helmut Hummel authored
In the course of making TSFE request/response aware, we split the rendering preparations of TSFE into a PSR-15 middleware. This the first step to extract other parts, like redirecting to shortcuts/ mountpoints and sending http headers as well into middleware implementations. Resolves: #84909 Releases: master Change-Id: I704ae89a23c8e254574e19a78ecec363f182c747 Reviewed-on: https://review.typo3.org/56833 Tested-by:
TYPO3com <no-reply@typo3.com> Reviewed-by:
Georg Ringer <georg.ringer@gmail.com> Tested-by:
Georg Ringer <georg.ringer@gmail.com> Reviewed-by:
Frank Naegler <frank.naegler@typo3.org> Tested-by:
Frank Naegler <frank.naegler@typo3.org>
-