1. 19 Jun, 2022 1 commit
  2. 07 Apr, 2022 1 commit
  3. 09 Mar, 2022 1 commit
  4. 07 Feb, 2022 1 commit
    • Oliver Bartsch's avatar
      [!!!][FEATURE] New Module Registration API · 29db88c3
      Oliver Bartsch authored and Benni Mack's avatar Benni Mack committed
      This change introduces a new way to register
      TYPO3 Backend Modules.
      
      Each module is now registered during build-time
      in a dedicated registry. Therefore, The registration
      is moved from ext_tables.php to the
      Configuration/Backend/Modules.php file.
      
      Accessing the registered modules can be done via
      a central API, the ModuleProvider class. This class
      takes care of access permissions and further
      processing (e.g. module menu generation).
      
      $GLOBALS[TBE_MODULES] is fully removed as no sane
      backwards-compatibility (for a use-case) is available.
      
      A new PSR-14 event BeforeModuleCreationEvent is added,
      which allows to manipulate a module configuration, before
      it is used to create and register the module.
      
      Existing registrations do no longer work. However, to support
      extenion authors in maintaining multiple versions, the previously
      used API methods (e.g. `addModule` and `registerModule`) will
      stay until TYPO3 v13.0. No trigger_error() is used, so extension
      authors use the Extension Scanner to detect usages.
      
      Executed commands:
      
         composer u typo3/cms-styleguide
      
      Resolves: #96733
      Releases: main
      Change-Id: I07f4bc417e6effb1215cf0e373cc60f2b13ba8ad
      Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/73058
      
      
      Tested-by: core-ci's avatarcore-ci <typo3@b13.com>
      Tested-by: Christian Kuhn's avatarChristian Kuhn <lolli@schwarzbu.ch>
      Tested-by: Benni Mack's avatarBenni Mack <benni@typo3.org>
      Reviewed-by: Christian Kuhn's avatarChristian Kuhn <lolli@schwarzbu.ch>
      Reviewed-by: Benni Mack's avatarBenni Mack <benni@typo3.org>
      29db88c3
  5. 13 Jan, 2022 1 commit
  6. 30 Nov, 2021 1 commit
  7. 12 Aug, 2021 1 commit
    • Nikita Hovratov's avatar
      [FEATURE] Register SoftReference parsers via DI · 48810cb7
      Nikita Hovratov authored and Benni Mack's avatar Benni Mack committed
      The concept for registration and usage of soft reference parsers
      received a complete overhaul.
      
      Starting with the registration, it is now possible to register soft
      reference parsers by dependency injection in the extension's
      Services.(yaml|php) file. For this, the new tag name
      "softreference.parser" has been introduced. One has to provide the
      additional attribute "parserKey" to identify the parser. This
      replaces the old way of registering these parsers in the $GLOBALS
      array. If a parser is registered with the same key in both ways,
      the old way takes precedence for b/w compatibility.
      
      This comes with a completely new factory service class
      TYPO3\CMS\Core\DataHandling\SoftReference\SoftReferenceParserFactory.
      This classes' responsibilities are collecting all registered soft
      reference parsers and serving them to the consumer by calling the
      method "getSoftReferenceParser" with the desired parser key as the
      only argument. There is a compatibility layer for the old way of
      registration and for classes not implementing the new interface.
      
      Soft reference parsers now have to implement
      TYPO3\CMS\Core\DataHandling\SoftReference\SoftReferenceParserInterface.
      The interface defines the implementation of the "parse" method.
      The first 4 and the last parameter stay the same as in the old method
      "findRef". The remaining two parameters "spKey" and "spParams" have to
      be set with the "setParserKey" method, if they are needed. The key can
      be retrieved by using the "getParserKey" method.
      
      The different parser implementations in the old class
      TYPO3\CMS\Core\Database\SoftReferenceIndex have been extracted and
      moved into dedicated classes in the
      TYPO3\CMS\Core\DataHandling\SoftReference namespace. Missing tests
      for parsers other than "typolink" and "typolink_tag" are added.
      
      The method makeTokenID of SoftReferenceIndex has been moved into
      TYPO3\CMS\Core\DataHandling\SoftReference\AbstractSoftReferenceParser.
      A parser can extend this abstract class, if this method is needed.
      
      The methods of BackendUtility "softRefParserObj" and
      "explodeSoftRefParserList" are now deprecated and the replacement
      TYPO3\CMS\Core\DataHandling\SoftReference\SoftReferenceParserFactory
      should be used instead.
      
      Resolves: #94687
      Resolves: #94741
      Releases: master
      Change-Id: I460bfdd4478194fa4b4111fc44871f7225c6c084
      Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/70177
      
      
      Tested-by: core-ci's avatarcore-ci <typo3@b13.com>
      Tested-by: Oliver Bartsch's avatarOliver Bartsch <bo@cedev.de>
      Tested-by: Benni Mack's avatarBenni Mack <benni@typo3.org>
      Reviewed-by: Oliver Bartsch's avatarOliver Bartsch <bo@cedev.de>
      Reviewed-by: Benni Mack's avatarBenni Mack <benni@typo3.org>
      48810cb7
  8. 24 Mar, 2021 1 commit
  9. 19 Feb, 2021 1 commit
    • Oliver Bartsch's avatar
      [FEATURE] Introduce MFA in Core · 39145a46
      Oliver Bartsch authored and Benni Mack's avatar Benni Mack committed
      A new API is introduced, providing multi-factor
      authentication for the Core. The API is furthermore
      directly used to add two MFA providers by default:
      
      * TOTP (time-based one-time passwords)
      * Recovery codes
      
      Even if the API is designed to allow MFA in both,
      backend and frontend, it is currently only implemented
      into the backend. Users can therefore configure their
      available MFA providers in a new backend module,
      accessible via their user settings.
      
      There are also some configuration options for
      administrators to e.g. define a recommended provider
      or to disallow available providers for specific users
      or user groups.
      
      Administration of the users' MFA providers is possible
      for administrators in the corresponding user records.
      
      New providers can be introduced by implementing the
      MfaProviderInterface and tagging the service with the
      `mfa.provider` tag.
      
      Note that the API is currently marked as internal since
      changes in upcoming patches are to be expected.
      
      Following dependencies are introduced:
      
      * bacon/bacon-qr-code "^2.0"
      * christian-riesen/base32 "^1.5"
      
      Possible features that could follow later-on:
      
      * MFA frontend integration
      * Webauthn core provider for FIDO2 and U2F.
      * Forcing users to set up MFA on login
      * Password-recovery with active MFA
      
      Resolves: #93526
      Releases: master
      Change-Id: I4e902be624c80295c9c0c3286c90a6a680feeb5d
      Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67548
      
      
      Reviewed-by: Benjamin Franzke's avatarBenjamin Franzke <bfr@qbus.de>
      Reviewed-by: Christian Kuhn's avatarChristian Kuhn <lolli@schwarzbu.ch>
      Reviewed-by: Benni Mack's avatarBenni Mack <benni@typo3.org>
      Tested-by: default avatarTYPO3com <noreply@typo3.com>
      Tested-by: core-ci's avatarcore-ci <typo3@b13.com>
      Tested-by: Benjamin Franzke's avatarBenjamin Franzke <bfr@qbus.de>
      Tested-by: Benni Mack's avatarBenni Mack <benni@typo3.org>
      39145a46
  10. 23 Mar, 2020 1 commit
  11. 16 Jan, 2020 1 commit
  12. 04 Oct, 2019 2 commits
  13. 16 Jul, 2019 1 commit
  14. 19 Dec, 2018 1 commit
  15. 29 Sep, 2018 1 commit
  16. 15 Jun, 2018 1 commit
  17. 30 May, 2018 1 commit
  18. 15 May, 2018 1 commit
  19. 14 Mar, 2018 1 commit
  20. 14 Feb, 2018 1 commit
  21. 02 Jan, 2018 1 commit
  22. 25 Apr, 2017 1 commit
  23. 24 Feb, 2017 1 commit
  24. 31 Mar, 2016 1 commit
  25. 04 Mar, 2016 1 commit
  26. 28 Jul, 2015 1 commit
  27. 30 Mar, 2015 2 commits
  28. 22 Mar, 2015 1 commit
  29. 06 Jan, 2015 1 commit
  30. 14 Nov, 2014 1 commit
  31. 20 Sep, 2014 1 commit
  32. 27 Jan, 2014 1 commit
    • Felix Kopp's avatar
      [TASK] EXT: lowlevel Configuration labels · ef4d996a
      Felix Kopp authored and Wouter Wolters's avatar Wouter Wolters committed
      Configuration arrays should be accessed via $GLOBALS.
      Modify labels to include the $GLOBALS keyword.
      
      Change-Id: Iea3255e8ebcbf5bd23400fe4d597ea5eca421025
      Resolves: #55324
      Releases: 6.2
      Reviewed-on: https://review.typo3.org/27055
      Reviewed-by: Marcin Sągol
      Reviewed-by: Christian Kuhn
      Tested-by: Christian Kuhn
      Reviewed-by: Wouter Wolters
      Tested-by: Wouter Wolters
      ef4d996a
  33. 21 Oct, 2011 1 commit
    • Xavier Perseguers's avatar
      [BUGFIX] Pootle: Multi-line labels are not rendered properly · 3a9de702
      Xavier Perseguers authored
      In order to ensure that multi-line labels can be properly translated on Pootle or
      any 3rd party tool, it turns out that an additional attribute xml:space="preserve"
      should be added to each and every <trans-unit> tag in the localization files.
      
      Change-Id: I74dbf92196b649b96023b329eb12ad98dac7be49
      Fixes: #31141
      Releases: 4.6
      Reviewed-on: http://review.typo3.org/6121
      Reviewed-by: Dominique Feyer
      Tested-by: Dominique Feyer
      Reviewed-by: Xavier Perseguers
      Tested-by: Xavier Perseguers
      3a9de702
  34. 18 Oct, 2011 1 commit
    • Dominique Feyer's avatar
      [TASK] English XLIFF files should not contain target element · 92eb0f63
      Dominique Feyer authored and Xavier Perseguers's avatar Xavier Perseguers committed
      Pootle uses the English XLIFF file has the template language and as such
      it does not make sense to have "en" -> "en" translation files.
      
      English XLIFF files are templates and should contain only a 'source', not
      a 'target' element.
      
      This commit contains:
      
      - Remove of the target elements
      - Remove target-language attribute
      - Set the date attribute to the correct format
      - Remove approved attribute
      
      Change-Id: I84f4534f5ed595868c88f05816a73464a76f3f25
      Resolves: #31035
      Relates: #30916
      Releases: 4.6
      Reviewed-on: http://review.typo3.org/5916
      Tested-by: Philipp Gampe
      Reviewed-by: Xavier Perseguers
      Tested-by: Xavier Perseguers
      92eb0f63
  35. 30 Aug, 2011 1 commit
  36. 26 Aug, 2011 1 commit
  37. 02 Aug, 2011 1 commit