Skip to content
Snippets Groups Projects
  1. Sep 29, 2018
    • Benni Mack's avatar
      [FEATURE] Introduce RouteEnhancers for Page-based Routing · 4844fae6
      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: default avatarTYPO3com <no-reply@typo3.com>
      Reviewed-by: default avatarSusanne Moog <susanne.moog@typo3.org>
      Tested-by: default avatarSusanne Moog <susanne.moog@typo3.org>
      Reviewed-by: default avatarOliver Hader <oliver.hader@typo3.org>
      Tested-by: default avatarOliver Hader <oliver.hader@typo3.org>
      4844fae6
  2. Sep 17, 2018
    • Benni Mack's avatar
      [TASK] Streamline hooks and middlewares related to PSR-15 · 6cb30999
      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: default avatarAndreas Fernandez <a.fernandez@scripting-base...>
      6cb30999
  3. Sep 13, 2018
  4. Jul 27, 2018
  5. May 31, 2018
  6. May 11, 2018
    • Benni Mack's avatar
      [TASK] Deprecate various TSFE methods · 0235c136
      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...
      0235c136
  7. May 10, 2018
  8. May 09, 2018
  9. May 04, 2018