Packages/TYPO3.CMS.git
8 months ago[TASK] Remove unneeded SingletonInstance resets in recent extbase tests 34/61234/2
Benjamin Franzke [Fri, 5 Jul 2019 11:54:51 +0000 (13:54 +0200)]
[TASK] Remove unneeded SingletonInstance resets in recent extbase tests

These were introduced with the recent extbase configuration manager
hardening but are not needed, because there are no singletons
triggered via makeInstance in these tests.

Change-Id: Iae4d55acd8a02997dd8fc256231c39503a8cfc88
Resolves: #88693
Related: #87628
Releases: master
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/61234
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Alexander Schnitzler <review.typo3.org@alexanderschnitzler.de>
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Reviewed-by: Alexander Schnitzler <review.typo3.org@alexanderschnitzler.de>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
8 months ago[!!!][TASK] Harden extbase configuration managers 24/59624/8
Alexander Schnitzler [Tue, 2 Jul 2019 15:12:29 +0000 (17:12 +0200)]
[!!!][TASK] Harden extbase configuration managers

- Use strict type mode
- Use type hints whereever possible

Releases: master
Resolves: #87628
Change-Id: I97ccf3d4ca66828efbb59b49786eb69e7de3c925
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/59624
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Benni Mack <benni@typo3.org>
Tested-by: Frank Naegler <frank.naegler@typo3.org>
Reviewed-by: Benni Mack <benni@typo3.org>
Reviewed-by: Daniel Goerz <daniel.goerz@posteo.de>
Reviewed-by: Frank Naegler <frank.naegler@typo3.org>
8 months ago[!!!][TASK] Drop FormEngine popup configuration 95/61195/3
Andreas Fernandez [Sun, 30 Jun 2019 06:12:46 +0000 (08:12 +0200)]
[!!!][TASK] Drop FormEngine popup configuration

The options `options.popupWindowSize` and `options.rte.popupWindowSize`
used to configure popup sizes have been removed.

Most of the popups are rendered as modals that don't allow configured
sizes, the remaining popups have hardcoded sizes.

Resolves: #88657
Releases: master
Change-Id: Ide212d0669e8c4bc199263c5fe868529cbbc7930
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/61195
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Daniel Goerz <daniel.goerz@posteo.de>
Tested-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
Reviewed-by: Björn Jacob <bjoern.jacob@tritum.de>
Reviewed-by: Daniel Goerz <daniel.goerz@posteo.de>
Reviewed-by: Johannes Seipelt <johannes.seipelt@3m5.de>
Reviewed-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
8 months ago[TASK] Harden \TYPO3\CMS\Extbase\Persistence\Generic\Mapper\DataMapFactory 01/61201/4
Alexander Schnitzler [Mon, 1 Jul 2019 07:58:39 +0000 (09:58 +0200)]
[TASK] Harden \TYPO3\CMS\Extbase\Persistence\Generic\Mapper\DataMapFactory

- Use strict type mode
- Use type hints whereever possible
- Use type casts according to phpstan results

Releases: master
Resolves: #88663
Change-Id: Ic4cf7fe508f62b2a2fd4d2e809f17628c3ad347b
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/61201
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Benni Mack <benni@typo3.org>
Tested-by: Daniel Goerz <daniel.goerz@posteo.de>
Reviewed-by: Oliver Klee <typo3-coding@oliverklee.de>
Reviewed-by: Benni Mack <benni@typo3.org>
Reviewed-by: Daniel Goerz <daniel.goerz@posteo.de>
8 months ago[TASK] Harden \TYPO3\CMS\Extbase\Utility\DebuggerUtility 09/61109/4
Alexander Schnitzler [Thu, 4 Jul 2019 13:02:28 +0000 (15:02 +0200)]
[TASK] Harden \TYPO3\CMS\Extbase\Utility\DebuggerUtility

- Use strict type mode
- Use type hints whereever possible
- Use type casts according to phpstan results

Releases: master
Resolves: #88603
Change-Id: I54d3a036a7acdfe75e075269c000c03b7db3401b
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/61109
Reviewed-by: Oliver Klee <typo3-coding@oliverklee.de>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Reviewed-by: Daniel Goerz <daniel.goerz@posteo.de>
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Tested-by: Daniel Goerz <daniel.goerz@posteo.de>
8 months ago[TASK] Switch to json_encode/decode for state saving 20/61220/2
Benni Mack [Wed, 3 Jul 2019 14:38:40 +0000 (16:38 +0200)]
[TASK] Switch to json_encode/decode for state saving

Various places (Trees, Inline Data) can be optimized by
using a more "space-saving" and faster approach.

By using json_encode/decode instead of serializing the
data, the stored information in "uc" of Backend Users
will be vastly smaller when dealing with larger installations.

Resolves: #88680
Releases: master
Change-Id: I59e83c8c7615e9da63b04ebb4930c2b68b38ad7c
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/61220
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Tested-by: Oliver Hader <oliver.hader@typo3.org>
Reviewed-by: Oliver Klee <typo3-coding@oliverklee.de>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Reviewed-by: Oliver Hader <oliver.hader@typo3.org>
8 months ago[!!!][FEATURE] Replace SwiftMailer with symfony/mailer and symfony/mime 52/61152/12
Benni Mack [Wed, 26 Jun 2019 05:24:29 +0000 (07:24 +0200)]
[!!!][FEATURE] Replace SwiftMailer with symfony/mailer and symfony/mime

SwiftMailer is not in active development anymore
as the author created the successor symfony/mailer
and symfony/mime packages to create and send
emails.

This is a breaking change, as PHP mail() is not
supported anymore. This is now automatically
switched to "sendmail".

In addition \Symfony\Mime\Email has a different
signature than \Swift_Message, which will
cause some trouble, however we've managed
to overcome most of that functionality to
stay backwards-compatible.

Also, all extensions extending from SwiftMailer
will fail as the package is be removed
with this patch.

Spooling has been reimplemented as direct transport
methods (DelayedTransportInterface) instead of
Symfony Messaging for the time being.

Used composer commands:
 * composer require symfony/mailer symfony/mime
 * composer remove swiftmailer/swiftmailer

Resolves: #88643
Releases: master
Change-Id: Ic02db633392f1d0d7b7061e7b322435f892d2c04
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/61152
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Tested-by: Georg Ringer <georg.ringer@gmail.com>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Reviewed-by: Georg Ringer <georg.ringer@gmail.com>
8 months ago[!!!][TASK] Remove import of PHP files of admins from impexp 21/61221/3
Benni Mack [Wed, 3 Jul 2019 15:47:44 +0000 (17:47 +0200)]
[!!!][TASK] Remove import of PHP files of admins from impexp

The functionality, which was only allowed for admins, does not
consider FAL restrictions. In order to be consistent with FAL, this
is removed.

Resolves: #88681
Releases: master
Change-Id: I7a42539b5391af7d730deabffbe638a2ceed1a05
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/61221
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Oliver Hader <oliver.hader@typo3.org>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Reviewed-by: Oliver Hader <oliver.hader@typo3.org>
8 months ago[TASK] Fix deprecation warning in idnaEncode 19/61219/2
Simon Gilli [Wed, 3 Jul 2019 14:33:02 +0000 (16:33 +0200)]
[TASK] Fix deprecation warning in idnaEncode

__METHOD__ already includes the class name so __CLASS__ has to be
removed.

Resolves: #88679
Releases: master
Change-Id: I9a5fb6a4622a811f18547b55b22fdde0ea4ad62c
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/61219
Tested-by: Alexander Schnitzler <review.typo3.org@alexanderschnitzler.de>
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Reviewed-by: Alexander Schnitzler <review.typo3.org@alexanderschnitzler.de>
Reviewed-by: Oliver Klee <typo3-coding@oliverklee.de>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
8 months ago[TASK] Streamline PageRenderer class 14/61214/2
Benni Mack [Tue, 2 Jul 2019 16:31:44 +0000 (18:31 +0200)]
[TASK] Streamline PageRenderer class

Some methods are not in use anymore, and also
some FQCN can be shortened in order to
clean up this class for further refactorings.

Resolves: #88673
Releases: master
Change-Id: I642caec9386945d0217984b76f586a9a24e13d14
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/61214
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Alexander Schnitzler <review.typo3.org@alexanderschnitzler.de>
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Reviewed-by: Sven Juergens <typo3@blue-side.de>
Reviewed-by: Alexander Schnitzler <review.typo3.org@alexanderschnitzler.de>
Reviewed-by: Oliver Klee <typo3-coding@oliverklee.de>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
8 months ago[BUGFIX] Remove obsolete IRRE-related functions 96/61196/2
Andreas Fernandez [Sun, 30 Jun 2019 06:32:29 +0000 (08:32 +0200)]
[BUGFIX] Remove obsolete IRRE-related functions

With the refactoring of client-side IRRE, some functions in TBE_EDITOR
became obsolete. Those are removed now.

Resolves: #88658
Related: #88182
Releases: master
Change-Id: I3e667b70b9108befd88f1a7ee067d73cfffafeb2
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/61196
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Daniel Goerz <daniel.goerz@posteo.de>
Tested-by: Oliver Hader <oliver.hader@typo3.org>
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Reviewed-by: Björn Jacob <bjoern.jacob@tritum.de>
Reviewed-by: Daniel Goerz <daniel.goerz@posteo.de>
Reviewed-by: Oliver Hader <oliver.hader@typo3.org>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
8 months ago[!!!][FEATURE] Introduce migration wizard for changed flexform fields 50/60450/24
Jan Stockfisch [Thu, 11 Apr 2019 17:25:30 +0000 (19:25 +0200)]
[!!!][FEATURE] Introduce migration wizard for changed flexform fields

Rename ext:felogin's flexform fields. Add prefix `settings.` to all of
them. This is for the later extbase change to easily access the flexform
values via $this->settings in the extbase controllers.

An update wizard is provided to migrate all existing felogin plugins
which are stored in the database.

Resolves: #88129
Releases: master
Change-Id: I76158d8c73d5510fc537fcd5d5bbb376b156c1e7
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/60450
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Daniel Goerz <daniel.goerz@posteo.de>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Reviewed-by: Daniel Goerz <daniel.goerz@posteo.de>
8 months ago[TASK] Improve ViewHelper documentation 04/61104/9
Daniel Siepmann [Fri, 21 Jun 2019 07:42:44 +0000 (09:42 +0200)]
[TASK] Improve ViewHelper documentation

* Add examples to ViewHelpers that did not have any example yet.
* Add cross references between ViewHelpers where a different ViewHelper
  was mentioned.
* Add full stop to end if sentences.
* Fix indentation within examples.
* Add some syntax like code.
* Fix escaping of PHP classes with namespaces by wrapping them with
  :php:`` text role.
* Use https for urls to php.net.
* Remove '/en/' path from urls to php.net. This ensures the current user
  language is auto detected. Not forcing anyone to keep english.

Relates: #88600
Releases: master, 9.5
Change-Id: I2394890a20adba06719fa35990044057346dfb2b
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/61104
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Daniel Goerz <daniel.goerz@posteo.de>
Tested-by: Tymoteusz Motylewski <t.motylewski@gmail.com>
Reviewed-by: Daniel Goerz <daniel.goerz@posteo.de>
Reviewed-by: Tymoteusz Motylewski <t.motylewski@gmail.com>
8 months ago[BUGFIX] Change comparison in BasicFileUtility 85/60885/4
Georg Ringer [Thu, 6 Jun 2019 03:20:15 +0000 (05:20 +0200)]
[BUGFIX] Change comparison in BasicFileUtility

Due to an unrelated change within #76257,
BasicFileUtility never accounts for proper
creating a randomly unique name.

Resolves: #88455
Related: #76257
Releases: master, 9.5, 8.7
Change-Id: I41fe95a9b5b68a7d29cf529f0877331197990940
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/60885
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Reviewed-by: Benni Mack <benni@typo3.org>
Reviewed-by: Daniel Goerz <daniel.goerz@posteo.de>
Tested-by: Benni Mack <benni@typo3.org>
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Daniel Goerz <daniel.goerz@posteo.de>
8 months ago[BUGFIX] Send "Set-Cookie" HTTP header as multi line 67/60867/11
Markus Poerschke [Mon, 3 Jun 2019 15:06:27 +0000 (17:06 +0200)]
[BUGFIX] Send "Set-Cookie" HTTP header as multi line

To set multiple cookies at the same request, the "Set-Cookie" header
must be sent as multi line. The default behavior, a comma separated list,
will cause that only the first cookie is set.

Resolves: #88482
Releases: master, 9.5
Change-Id: Ife4dfeb9e4e7c0452d8da10740450c8cbd26ac3e
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/60867
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Benni Mack <benni@typo3.org>
Tested-by: Daniel Goerz <daniel.goerz@posteo.de>
Reviewed-by: Benni Mack <benni@typo3.org>
Reviewed-by: Daniel Goerz <daniel.goerz@posteo.de>
8 months ago[TASK] Harden exceptions in Extbase 12/61112/2
Alexander Schnitzler [Fri, 21 Jun 2019 13:23:23 +0000 (15:23 +0200)]
[TASK] Harden exceptions in Extbase

- Use strict type mode
- Use type hints whereever possible

Releases: master
Resolves: #88606
Change-Id: I44ed34b1dc81b22b9e1f68f7523d3c1f5311f20a
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/61112
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Benni Mack <benni@typo3.org>
Tested-by: Daniel Goerz <daniel.goerz@posteo.de>
Reviewed-by: Benni Mack <benni@typo3.org>
Reviewed-by: Daniel Goerz <daniel.goerz@posteo.de>
8 months ago[TASK] Follow-up: Replace config.persistence.classes typoscript 13/61113/4
Alexander Schnitzler [Fri, 21 Jun 2019 13:42:57 +0000 (15:42 +0200)]
[TASK] Follow-up: Replace config.persistence.classes typoscript

With #87623, a couple of fixture classes have been added to the
Classes folder instead of the Tests folder. With this patch the
fixture classes are moved to their proper location.

Releases: master
Resolves: #88607
Relates: #87623
Change-Id: Ib90f3c7e628270bd5bb16a7d95c1df5cf5fe8e9a
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/61113
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Daniel Goerz <daniel.goerz@posteo.de>
Tested-by: Benni Mack <benni@typo3.org>
Reviewed-by: Daniel Goerz <daniel.goerz@posteo.de>
Reviewed-by: Benni Mack <benni@typo3.org>
8 months ago[BUGFIX] Use correct QueryBuilder for NewRecord wizard 00/61200/2
Benni Mack [Mon, 1 Jul 2019 07:55:26 +0000 (09:55 +0200)]
[BUGFIX] Use correct QueryBuilder for NewRecord wizard

A database querybuilder for sys_language is requested,
however the database query is made on the "pages" table.

Resolves: #88661
Releases: master, 9.5
Change-Id: Ibb4ed52a87321af3d1ce80cf8a25053f62349dba
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/61200
Tested-by: Daniel Goerz <daniel.goerz@posteo.de>
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Reviewed-by: Daniel Goerz <daniel.goerz@posteo.de>
Reviewed-by: Achim Fritz <af@achimfritz.de>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
8 months ago[BUGFIX] ImmediateResponseException needs to be relayed 70/60370/6
Jonas Schwabe [Thu, 4 Apr 2019 10:21:17 +0000 (12:21 +0200)]
[BUGFIX] ImmediateResponseException needs to be relayed

ImmediateResponseException were not handled correctly during content
object rendering when running in a production environment.
This patch makes sure that ImmediateResponses are handled as such instead
of just printing them during template rendering.

Resolves: #88080
Releases: master, 9.5
Change-Id: Id211b4064b438b3df0744c7a0de90b642ed872de
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/60370
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Benni Mack <benni@typo3.org>
Tested-by: Jonas Schwabe <jonas.schwabe@eyeworkers.de>
Tested-by: Daniel Goerz <daniel.goerz@posteo.de>
Reviewed-by: Benni Mack <benni@typo3.org>
Reviewed-by: Jonas Schwabe <jonas.schwabe@eyeworkers.de>
Reviewed-by: Daniel Goerz <daniel.goerz@posteo.de>
8 months ago[BUGFIX] Menu of updated pages skips current page 62/60462/2
Benni Mack [Sat, 13 Apr 2019 05:43:20 +0000 (07:43 +0200)]
[BUGFIX] Menu of updated pages skips current page

When using beginAtLevel = 1 is set, then HMENU
should not include the current page at all, so this
is now fixed by "getTreeList" handing in a positive
page ID.

Resolves: #23255
Releases: master, 9.5
Change-Id: Ie596323950c961b86e4ec80fb4ef17a0d412a3e2
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/60462
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Riccardo De Contardi <erredeco@gmail.com>
Tested-by: Daniel Goerz <daniel.goerz@posteo.de>
Tested-by: Daniel Gorges <daniel.gorges@b13.de>
Tested-by: Benni Mack <benni@typo3.org>
Reviewed-by: Daniel Goerz <daniel.goerz@posteo.de>
Reviewed-by: Daniel Gorges <daniel.gorges@b13.de>
Reviewed-by: Benni Mack <benni@typo3.org>
8 months ago[BUGFIX] Code block in docs regarding site base variants 69/61169/2
Daniel Siepmann [Sat, 29 Jun 2019 08:07:47 +0000 (10:07 +0200)]
[BUGFIX] Code block in docs regarding site base variants

Do not use inline notion of providing a whole block of code.

Relates: #88630
Releases: master, 9.5
Change-Id: I2f691cbdd4d617bf1a0ac4a82000f809f865c069
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/61169
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Georg Ringer <georg.ringer@gmail.com>
Tested-by: Daniel Goerz <daniel.goerz@posteo.de>
Reviewed-by: Georg Ringer <georg.ringer@gmail.com>
Reviewed-by: Daniel Goerz <daniel.goerz@posteo.de>
8 months ago[BUGFIX] Fix syntax and logic errors in BE Fluid templates 02/60802/6
Claus Due [Thu, 23 May 2019 10:47:49 +0000 (12:47 +0200)]
[BUGFIX] Fix syntax and logic errors in BE Fluid templates

Fixes an invalid syntax occurrence in the "PageZero.html"
template from EXT:tstemplate. And fixes a logical error
plus incorrect XML tag nesting in the partial template
"DocHeader.html" from EXT:backend.

Change-Id: Ib38fbb2d80cd8e24a2400ec7d2dbd12dee5605ec
Resolves: #88422
Releases: master, 9.5
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/60802
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Jonas Eberle <flightvision@googlemail.com>
Tested-by: Guido Schmechel <guido.schmechel@brandung.de>
Tested-by: Daniel Goerz <daniel.goerz@posteo.de>
Reviewed-by: Jonas Eberle <flightvision@googlemail.com>
Reviewed-by: Guido Schmechel <guido.schmechel@brandung.de>
Reviewed-by: Daniel Goerz <daniel.goerz@posteo.de>
8 months ago[TASK] Harden \TYPO3\CMS\Extbase\Utility\FrontendSimulatorUtility 10/61110/3
Alexander Schnitzler [Fri, 21 Jun 2019 12:45:17 +0000 (14:45 +0200)]
[TASK] Harden \TYPO3\CMS\Extbase\Utility\FrontendSimulatorUtility

- Use strict type mode
- Use type hints whereever possible

Releases: master
Resolves: #88604
Change-Id: Ie2641c04a7e97313c657152c14bcf5b15d9d6a74
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/61110
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Jonas Eberle <flightvision@googlemail.com>
Tested-by: Daniel Goerz <daniel.goerz@posteo.de>
Reviewed-by: Oliver Klee <typo3-coding@oliverklee.de>
Reviewed-by: Jonas Eberle <flightvision@googlemail.com>
Reviewed-by: Daniel Goerz <daniel.goerz@posteo.de>
8 months ago[BUGFIX] Add tests for email via typolink 51/61151/2
Benni Mack [Tue, 25 Jun 2019 10:38:32 +0000 (12:38 +0200)]
[BUGFIX] Add tests for email via typolink

Resolves: #88287
Releases: master
Change-Id: I4e6efbd00caca8c1ed01252f1dde30f36330640e
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/61151
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Jonas Eberle <flightvision@googlemail.com>
Tested-by: Daniel Goerz <daniel.goerz@posteo.de>
Reviewed-by: Jonas Eberle <flightvision@googlemail.com>
Reviewed-by: Daniel Goerz <daniel.goerz@posteo.de>
8 months ago[BUGFIX] Use correct PHP syntax in code example 92/61092/3
mstaatz [Wed, 19 Jun 2019 10:59:08 +0000 (12:59 +0200)]
[BUGFIX] Use correct PHP syntax in code example

Releases: master, 9.5
Resolves: #88591
Change-Id: I45588bfd8f1dd26debec6e06d6a3466a7458496a
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/61092
Reviewed-by: Oliver Klee <typo3-coding@oliverklee.de>
Reviewed-by: Guido Schmechel <guido.schmechel@brandung.de>
Reviewed-by: Daniel Goerz <daniel.goerz@posteo.de>
Tested-by: Oliver Klee <typo3-coding@oliverklee.de>
Tested-by: Guido Schmechel <guido.schmechel@brandung.de>
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Daniel Goerz <daniel.goerz@posteo.de>
8 months ago[BUGFIX] Prevent scrollbar in "Environment Overview" modal 41/61041/7
Jonas Eberle [Fri, 14 Jun 2019 19:41:56 +0000 (21:41 +0200)]
[BUGFIX] Prevent scrollbar in "Environment Overview" modal

Wrap potentially long version strings to prevent a horizontal
scrollbar in the modal content.

Introduces CSS class "text-wrap-allowed".

Resolves: #88522
Releases: master, 9.5
Change-Id: I848ecc111ec4879caf12b77f5308f5eadd403ffa
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/61041
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Riccardo De Contardi <erredeco@gmail.com>
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Tested-by: Daniel Goerz <daniel.goerz@posteo.de>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Reviewed-by: Daniel Goerz <daniel.goerz@posteo.de>
8 months ago[!!!][TASK] Remove "sys_template.nextLevel" 58/61158/3
Benni Mack [Thu, 27 Jun 2019 12:43:29 +0000 (14:43 +0200)]
[!!!][TASK] Remove "sys_template.nextLevel"

The special handling "nextLevel" in TypoScript templates
to only load a specific sys_template on the next level (subpages and
further down the rootline) but not on the current level,
is removed.

It is recommended to use proper inclusions and TypoScript
conditions instead.

This reduces complexity within the TemplateService parser,
and for newcomers a very confusing option after gathering
some feedback on this topic.

The database field "sys_template.nextLevel" is therefore
removed.

Resolves: #88640
Releases: master
Change-Id: I06e14d6dfbde82eb36f2ffc30b61bd9870906246
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/61158
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Tested-by: Daniel Goerz <daniel.goerz@posteo.de>
Reviewed-by: Benjamin Kott <benjamin.kott@outlook.com>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Reviewed-by: Daniel Goerz <daniel.goerz@posteo.de>
8 months ago[BUGFIX] Convert class aliases of switchable controller actions to FQCN's 06/60906/3
Alexander Schnitzler [Sun, 9 Jun 2019 09:28:44 +0000 (11:28 +0200)]
[BUGFIX] Convert class aliases of switchable controller actions to FQCN's

When the patch https://forge.typo3.org/issues/87550 changed the controller
configuration of plugins and modules to use fully qualified controller
class names instead of just controller aliases, the override mechanism
called switchable controller actions, that can be used via typoscript
and flexforms broke.

This is due to the fact that switchable controller actions are usually
still used with controller aliases rather than fully qualified controller
class names.

To fix this, method overrideSwitchableControllerActions of class
\TYPO3\CMS\Extbase\Configuration\AbstractConfigurationManager has been
adjusted to convert controller aliases to FQCN's before overriding the
controller configuration.

Releases: master
Resolves: #88513
Relates: #87550
Change-Id: Ie2d1eb4b64d03d4e17d08a85aa7f8e548bff92bb
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/60906
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Benni Mack <benni@typo3.org>
Tested-by: Daniel Goerz <daniel.goerz@posteo.de>
Reviewed-by: Benni Mack <benni@typo3.org>
Reviewed-by: Daniel Goerz <daniel.goerz@posteo.de>
9 months ago[TASK] Replace `TYPO3/CMS/Backend/SplitButtons` 64/61164/4
Andreas Fernandez [Fri, 28 Jun 2019 09:26:51 +0000 (11:26 +0200)]
[TASK] Replace `TYPO3/CMS/Backend/SplitButtons`

Since FormEngine doesn't use split buttons anymore with TYPO3 v9, the
JavaScript module `TYPO3/CMS/Backend/SplitButtons` has been replaced with
`TYPO3/CMS/Backend/DocumentSaveActions`.

The old module is still in place, but usage will trigger a deprecation
warning in the browser's console.

Resolves: #88651
Releases: master
Change-Id: If180f080b956804d49ca928afe4d86d07d1939bb
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/61164
Tested-by: Frank Naegler <frank.naegler@typo3.org>
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Daniel Goerz <daniel.goerz@posteo.de>
Reviewed-by: Frank Naegler <frank.naegler@typo3.org>
Reviewed-by: Daniel Goerz <daniel.goerz@posteo.de>
9 months ago[TASK] Install Tool: Move action buttons into modal footer 99/60899/3
Andreas Fernandez [Fri, 7 Jun 2019 14:51:53 +0000 (16:51 +0200)]
[TASK] Install Tool: Move action buttons into modal footer

Resolves: #88523
Releases: master
Change-Id: I26404c120702bac669b3ad3aaf9280a76eb8f0e2
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/60899
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Benni Mack <benni@typo3.org>
Tested-by: Daniel Goerz <daniel.goerz@posteo.de>
Reviewed-by: Benni Mack <benni@typo3.org>
Reviewed-by: Daniel Goerz <daniel.goerz@posteo.de>
9 months ago[BUGFIX] Improve performance with symfony/property-info 76/61076/5
Alexander Schnitzler [Mon, 17 Jun 2019 16:12:56 +0000 (18:12 +0200)]
[BUGFIX] Improve performance with symfony/property-info

With the introduction of symfony/property-info, the class
\Symfony\Component\PropertyInfo\Extractor\PhpDocExtractor
has been used to extract property types from the php doc.

Unfortunately said extractor class doesn't cache the so
called context object, which is created repeatedly for
each property of each class.

The context object is used to determine non FQCN's and
its creation comes at very high costs.

To fix this issue, a custom PhpDocExtractor class has
been created which acts just like the original one, but
which caches the context objects.

Releases: master
Fixes: #88033
Change-Id: I54bec5b8adadeb6bde107547cbd115fa8be97526
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/61076
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Benni Mack <benni@typo3.org>
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Reviewed-by: Benni Mack <benni@typo3.org>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
9 months ago[FEATURE] Set Twitter Card Type in page properties 63/61163/4
Richard Haeser [Thu, 27 Jun 2019 20:42:34 +0000 (22:42 +0200)]
[FEATURE] Set Twitter Card Type in page properties

This option will make it possible to select a type of Twitter Card
that should be used when your page is shared on Twitter.

Resolves: #88648
Releases: master
Change-Id: I9b487cf51ae6380fe771e1bcbbfd196d8b952f0f
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/61163
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Daniel Goerz <daniel.goerz@posteo.de>
Tested-by: Riny van Tiggelen <info@online-gamer.nl>
Tested-by: Richard Haeser <richard@maxserv.com>
Reviewed-by: Daniel Goerz <daniel.goerz@posteo.de>
Reviewed-by: Björn Jacob <bjoern.jacob@tritum.de>
Reviewed-by: Riny van Tiggelen <info@online-gamer.nl>
Reviewed-by: Richard Haeser <richard@maxserv.com>
9 months ago[!!!][TASK] Remove AbstractService inheritance from AbstractAuthService 25/61125/4
Benni Mack [Tue, 25 Jun 2019 04:23:35 +0000 (06:23 +0200)]
[!!!][TASK] Remove AbstractService inheritance from AbstractAuthService

The current Authentication Service API looks like this:

AbstractService
-> AbstractAuthenticationService
-> AuthenticationService

Most of the functionality of AbstractService is not
used and leads to a confusing PHP inheritance structure,
where most functionality is not needed actually.

Since there are no proper contracts APIs for neither
makeInstanceService / Service API nor Authentication,
the first step is to decouple the logic of both
areas and allow Authentication to continue without
a strong dependency on AbstractService.

This is a pre-patch to decouple Authentication logic
from Service logic.

Resolves: #88646
Releases: master
Change-Id: I525f7510d06747fcb1e204c63cf7cbc3296a54a2
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/61125
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Tested-by: Georg Ringer <georg.ringer@gmail.com>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Reviewed-by: Georg Ringer <georg.ringer@gmail.com>
9 months ago[!!!][TASK] Remove 4th parameter of enableFields 73/61073/4
Benni Mack [Mon, 17 Jun 2019 13:26:44 +0000 (15:26 +0200)]
[!!!][TASK] Remove 4th parameter of enableFields

Since Versioning is completely handled via
the Context API and set within PageRepository
directly since TYPO3 v9, using the fourth
parameter would result in an invalid scenario.

Instead PageRepository->where_hid_del in
a live scenario now always contains (pid!=-1)
which filters out all non-versioned records.

This is a breaking change to avoid confusion,
however in regular scenarios this does
not affect the system, as PageRepository->versionOL()
filters out these cases in live workspace
anyways.

Resolves: #88574
Releases: master
Change-Id: I538c04997cb67e30c58a4dfa515acd751f868e9c
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/61073
Tested-by: Daniel Goerz <daniel.goerz@posteo.de>
Tested-by: Georg Ringer <georg.ringer@gmail.com>
Reviewed-by: Daniel Goerz <daniel.goerz@posteo.de>
Reviewed-by: Georg Ringer <georg.ringer@gmail.com>
9 months ago[BUGFIX] Add documentation for site-language base variants 62/61162/4
Benni Mack [Thu, 27 Jun 2019 20:17:12 +0000 (22:17 +0200)]
[BUGFIX] Add documentation for site-language base variants

Since bugfix #87831 it is possible to also add base variants
for specific languages, however this was not documented.

See

https://review.typo3.org/c/Packages/TYPO3.CMS/+/59840

for the related change.

Related: #87831
Resolves: #88647
Releases: master, 9.5
Change-Id: I9c170fde6a02f98843eddc3388ced90bb1997849
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/61162
Tested-by: Björn Jacob <bjoern.jacob@tritum.de>
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Daniel Goerz <daniel.goerz@posteo.de>
Reviewed-by: Björn Jacob <bjoern.jacob@tritum.de>
Reviewed-by: Daniel Goerz <daniel.goerz@posteo.de>
9 months ago[BUGFIX] Use correct PHP syntax in code example 91/61091/3
mstaatz [Wed, 19 Jun 2019 10:10:40 +0000 (12:10 +0200)]
[BUGFIX] Use correct PHP syntax in code example

Releases: master,9.5
Resolves: #88589
Change-Id: If71c06dd3033e7d73abc2baf3cf3b786cd45e331
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/61091
Tested-by: Alexander Schnitzler <review.typo3.org@alexanderschnitzler.de>
Tested-by: Daniel Goerz <daniel.goerz@posteo.de>
Reviewed-by: Alexander Schnitzler <review.typo3.org@alexanderschnitzler.de>
Reviewed-by: Daniel Goerz <daniel.goerz@posteo.de>
9 months ago[!!!][TASK] Drop DB field sys_language.static_lang_isocode 87/60887/5
Benni Mack [Thu, 6 Jun 2019 05:10:37 +0000 (07:10 +0200)]
[!!!][TASK] Drop DB field sys_language.static_lang_isocode

The database field "static_lang_isocode" in the DB table
"sys_language" is configured via static_info_tables, however
due to legacy reasons, this was added in TYPO3 Core,
as some references were put there. It is now possible
to remove any references to this field, and have the third-party
extension deal with it.

Resolves: #88583
Releases: master
Change-Id: I5c366c84d21e0d291ec32d44c0b2c2e1064f669d
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/60887
Tested-by: Daniel Goerz <daniel.goerz@posteo.de>
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Reviewed-by: Daniel Goerz <daniel.goerz@posteo.de>
Reviewed-by: Oliver Klee <typo3-coding@oliverklee.de>
Reviewed-by: Björn Jacob <bjoern.jacob@tritum.de>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
9 months ago[TASK] Deprecate TSFE->sys_language_isocode 02/61002/4
Benni Mack [Thu, 13 Jun 2019 13:31:32 +0000 (15:31 +0200)]
[TASK] Deprecate TSFE->sys_language_isocode

Due to the introduction of Site Handling, the public property
`$TSFE->sys_language_isocode` is not necessary anymore,
as this value is used outside of TSFE fully, and not needed as
public property to hold the state.

It is marked as deprecated.

Resolves: #88559
Releases: master
Change-Id: If02eb5b342fec4f83a9585dbc29fc13c8adda88e
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/61002
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Daniel Goerz <daniel.goerz@posteo.de>
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Reviewed-by: Daniel Goerz <daniel.goerz@posteo.de>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
9 months ago[!!!][TASK] Handle SoftRefParser without references 24/61124/3
Benni Mack [Tue, 25 Jun 2019 04:19:15 +0000 (06:19 +0200)]
[!!!][TASK] Handle SoftRefParser without references

The softRefParser logic previously contained its own
factory within BackendUtility with a magic singleton
logic built into "$GLOBALS['T3_VAR']['softRefParser']".

This has changed by building custom Singleton
Interfaces instead.

Resolves: #88638
Releases: master
Change-Id: I43f30c18b27f75672fbc2b5cc2cbdb725eb6f44a
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/61124
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Daniel Goerz <daniel.goerz@posteo.de>
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Reviewed-by: Daniel Goerz <daniel.goerz@posteo.de>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
9 months ago[TASK] fix list formatting 60/61160/3
Riccardo De Contardi [Thu, 27 Jun 2019 14:32:55 +0000 (14:32 +0000)]
[TASK] fix list formatting

Add some empty lines to allow correct list formatting, like on
https://github.com/TYPO3-Documentation/TYPO3CMS-Reference-CoreApi/edit/mas
ter/Documentation/ApiOverview/TypoScriptSyntax/Syntax/Includes.rst

Releases: master, 9.5
Resolves: #88641
Change-Id: Ice387d8b97d8b74ea859c92d274bcb535005fdae
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/61160
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Björn Jacob <bjoern.jacob@tritum.de>
Tested-by: Daniel Goerz <daniel.goerz@posteo.de>
Reviewed-by: Björn Jacob <bjoern.jacob@tritum.de>
Reviewed-by: Daniel Goerz <daniel.goerz@posteo.de>
9 months ago[TASK] Removed leftovers of AltPageTitleProvider 61/61161/2
Richard Haeser [Thu, 27 Jun 2019 19:29:31 +0000 (21:29 +0200)]
[TASK] Removed leftovers of AltPageTitleProvider

Removed the mention of altPageTitleProvider that were left on some
places after removing this deprecated provider.

Resolves: #88644
Releases: master
Change-Id: I0626373204706e7b57224ecd74b739d3b36d745b
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/61161
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Benni Mack <benni@typo3.org>
Tested-by: Kevin Appelt <kevin.appelt@icloud.com>
Tested-by: Richard Haeser <richard@maxserv.com>
Reviewed-by: Benni Mack <benni@typo3.org>
Reviewed-by: Simon Gilli <typo3@gilbertsoft.org>
Reviewed-by: Kevin Appelt <kevin.appelt@icloud.com>
Reviewed-by: Richard Haeser <richard@maxserv.com>
9 months ago[TASK] Open ElementBrowser event based in FormEngine 18/60818/4
Andreas Fernandez [Fri, 24 May 2019 14:43:22 +0000 (16:43 +0200)]
[TASK] Open ElementBrowser event based in FormEngine

Currently, the ElementBrowser is used in three different places in
FormEngine, all of them trigger it differently. This patch introduces
an event-driven approach and streamlines all usages.

Resolves: #88436
Releases: master
Change-Id: I13e696f29ade0aede6a2466cbca1e27cebc86c61
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/60818
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Daniel Goerz <daniel.goerz@posteo.de>
Tested-by: Benni Mack <benni@typo3.org>
Reviewed-by: Daniel Goerz <daniel.goerz@posteo.de>
Reviewed-by: Benni Mack <benni@typo3.org>
9 months ago[TASK] Remove special singleton handling of makeInstanceService 90/61090/3
Benni Mack [Wed, 19 Jun 2019 09:53:46 +0000 (11:53 +0200)]
[TASK] Remove special singleton handling of makeInstanceService

Calling GeneralUtility::makeInstanceService() stores
the instance as "persistent object". Since TYPO3 4.x this has been
dealt with SingletonInterface, which allows far more flexibility
in various places, as throughout the ENTIRE TYPO3 Core already.

The special handling of having GeneralUtility::makeInstanceService()
stores its own Singleton instances is removed, as the method
calls `GeneralUtility::makeInstance()` as well, which does handle
the SingletonInterface anyway.

For services in general (like Authentication Services), it is useful
to not have them as singleton. The current process within
"makeInstanceService()" now allows to properly "reset()" the
functionality anyway by re-calling "init()", which itself
calls "reset()" as well.

As there are no contracts (interfaces) for Services currently,
this should not interfere with anything existing services.

Resolves: #88588
Releases: master
Change-Id: Iba54715c04e510003c095578a237524ebe9f374f
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/61090
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Daniel Goerz <daniel.goerz@posteo.de>
Tested-by: Daniel Sattler <sattler@b13.de>
Tested-by: Benni Mack <benni@typo3.org>
Reviewed-by: Daniel Goerz <daniel.goerz@posteo.de>
Reviewed-by: Daniel Sattler <sattler@b13.de>
Reviewed-by: Benni Mack <benni@typo3.org>
9 months ago[BUGFIX] Decouple ColorPicker from FormEngine 94/61094/2
Andreas Fernandez [Wed, 19 Jun 2019 14:00:22 +0000 (16:00 +0200)]
[BUGFIX] Decouple ColorPicker from FormEngine

Since #87031 the color picker is tightly coupled to FormEngine, causing
issues if not used in FormEngine context, e.g. in Constant Editor.

This patch removes the introduced FormEngine handling and uses minicolors'
events to fix the original reported bug.

Resolves: #88593
Related: #87031
Releases: master, 9.5
Change-Id: Ibb20785785d406bc113035f79bec95d9788866ab
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/61094
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Jonas Eberle <flightvision@googlemail.com>
Tested-by: Joerg Kummer <typo3@enobe.de>
Tested-by: Daniel Goerz <daniel.goerz@posteo.de>
Reviewed-by: Markus Klein <markus.klein@typo3.org>
Reviewed-by: Susanne Moog <look@susi.dev>
Reviewed-by: Daniel Goerz <daniel.goerz@posteo.de>
9 months ago[BUGFIX] Correct global/multiple icon in listview 21/61121/3
Sven Juergens [Mon, 24 Jun 2019 13:11:17 +0000 (15:11 +0200)]
[BUGFIX] Correct global/multiple icon in listview

Resolves: #88620
Releases: master, 9.5

Correct global/multiple icon in listview

Change-Id: Id613f06d24148851d428c61c1166fabef1ad65af
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/61121
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Benni Mack <benni@typo3.org>
Tested-by: Simon Gilli <typo3@gilbertsoft.org>
Tested-by: Daniel Goerz <daniel.goerz@posteo.de>
Reviewed-by: Benni Mack <benni@typo3.org>
Reviewed-by: Simon Gilli <typo3@gilbertsoft.org>
Reviewed-by: Daniel Goerz <daniel.goerz@posteo.de>
9 months ago[BUGFIX] Consider translated pages in workspaces 44/60944/4
Benni Mack [Wed, 12 Jun 2019 11:04:35 +0000 (13:04 +0200)]
[BUGFIX] Consider translated pages in workspaces

This issue was raised that translated pages do not
show up in the list of records to be published/staged,
as translated pages are in the same table.

So, page handling needs to consider l10n_parent fields,
and check for the UID/l10n_parent, whereas other records
(like pages_language_overlay before) only are checked for
the "pid".

Resolves: #88446
Releases: master, 9.5
Change-Id: I9fe0b0290d4dd52104e15a08bb55e0aa7ab7473c
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/60944
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: matseriks <mats@pixelant.se>
Tested-by: Daniel Goerz <daniel.goerz@posteo.de>
Reviewed-by: matseriks <mats@pixelant.se>
Reviewed-by: Daniel Goerz <daniel.goerz@posteo.de>
9 months ago[BUGFIX] Do not rely on TYPO3_MODE for FE/BE checks 84/61084/4
Benni Mack [Tue, 18 Jun 2019 09:53:20 +0000 (11:53 +0200)]
[BUGFIX] Do not rely on TYPO3_MODE for FE/BE checks

In order to run a subrequest in Frontend,
TYPO3_MODE kills most of the functionality.

Although it is clear, that TYPO3 Core is not 100% there
yet, some very obvious changes can actually be replaced
with simple TSFE checks instead of TYPO3_MODE.

This is only focused on rendering content (Fluid),
and this happens in FE after TSFE is initialized, for eID
scripts, this would break already.

Resolves: #88581
Releases: master, 9.5
Change-Id: I9c97da60e7df572290e54d53da5eb8dac69e8f7e
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/61084
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Daniel Gorges <daniel.gorges@b13.de>
Tested-by: Daniel Goerz <daniel.goerz@posteo.de>
Reviewed-by: Alexander Schnitzler <review.typo3.org@alexanderschnitzler.de>
Reviewed-by: Daniel Gorges <daniel.gorges@b13.de>
Reviewed-by: Daniel Goerz <daniel.goerz@posteo.de>
9 months ago[BUGFIX] Display titles of changelog properly 54/61154/2
Daniel Siepmann [Wed, 26 Jun 2019 16:37:33 +0000 (18:37 +0200)]
[BUGFIX] Display titles of changelog properly

As `\`  is escaping, there has to be an additional `\` in front, in
order to display the `\` as expected.

Resolves: #88634
Releases: master, 9.5
Change-Id: I790079dd3de6e0a3ceb6ebfb93e1a52ad9bb4249
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/61154
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Alexander Schnitzler <review.typo3.org@alexanderschnitzler.de>
Tested-by: Daniel Goerz <daniel.goerz@posteo.de>
Reviewed-by: Alexander Schnitzler <review.typo3.org@alexanderschnitzler.de>
Reviewed-by: Mathias Brodala <mbrodala@pagemachine.de>
Reviewed-by: Daniel Goerz <daniel.goerz@posteo.de>
9 months ago[BUGFIX] Use Context API for TemplateService->versionOL 26/61126/2
Benni Mack [Tue, 25 Jun 2019 04:45:16 +0000 (06:45 +0200)]
[BUGFIX] Use Context API for TemplateService->versionOL

The Context API can be used now within
TemplateService to fetch a version overlay, which now
only relies on the PageRepository (which also uses Context API),
to avoid certain magic detection of Frontend/Backend mode.

TemplateService is only used to fetch sys_template
records in this use-case.

Resolves: #88626
Releases: master
Change-Id: I5f6526868af090915748031d50eeaf245049e655
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/61126
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Daniel Gorges <daniel.gorges@b13.de>
Tested-by: Daniel Goerz <daniel.goerz@posteo.de>
Reviewed-by: Daniel Gorges <daniel.gorges@b13.de>
Reviewed-by: Daniel Goerz <daniel.goerz@posteo.de>
9 months ago[BUGFIX] Simplify item states in Menu Generation 65/60865/2
Benni Mack [Mon, 3 Jun 2019 11:12:02 +0000 (13:12 +0200)]
[BUGFIX] Simplify item states in Menu Generation

The same if() loop is used for checking menu generation item states
(ACT/IFSUB etc), this can be very much simplified by using
a loop over the available item states which are now defined
as a constant.

Resolves: #88477
Releases: master
Change-Id: If8b7ddbcb2d367954d5757d2957bea6b34f8ed60
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/60865
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Susanne Moog <look@susi.dev>
Tested-by: Daniel Gorges <daniel.gorges@b13.de>
Tested-by: Benni Mack <benni@typo3.org>
Reviewed-by: Susanne Moog <look@susi.dev>
Reviewed-by: Daniel Gorges <daniel.gorges@b13.de>
Reviewed-by: Benni Mack <benni@typo3.org>
9 months ago[BUGFIX] Fix ExtensionScanner mismatch 57/61157/2
Benni Mack [Thu, 27 Jun 2019 11:25:48 +0000 (13:25 +0200)]
[BUGFIX] Fix ExtensionScanner mismatch

Due to #88498 a bug within the Extension
Scanner was introduced where the scanner
did not find the expected results due to
wrong information.

Resolves: #88639
Related: #88498
Releases: master
Change-Id: I47f0393fafd4860f058eeba6828b5143b6e1b8c2
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/61157
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Benni Mack <benni@typo3.org>
Reviewed-by: Benni Mack <benni@typo3.org>
9 months ago[BUGFIX] Use late static binding return type for Enumeration::cast 86/61086/8
Sascha Egerer [Tue, 18 Jun 2019 14:43:18 +0000 (16:43 +0200)]
[BUGFIX] Use late static binding return type for Enumeration::cast

The return type annotation must be `static` instead of `self` as the
method returns an instance of the inheriting class.

Do also replace some occurrences of get_calling_class()
by static::class

Resolves: #88587
Releases: master, 9.5, 8.7
Change-Id: Ib14d016ef733b94ed5a732ed36af8fcfcdee149b
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/61086
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Alexander Schnitzler <review.typo3.org@alexanderschnitzler.de>
Tested-by: Benni Mack <benni@typo3.org>
Reviewed-by: Alexander Schnitzler <review.typo3.org@alexanderschnitzler.de>
Reviewed-by: Oliver Klee <typo3-coding@oliverklee.de>
Reviewed-by: Oliver Hader <oliver.hader@typo3.org>
Reviewed-by: Benni Mack <benni@typo3.org>
9 months ago[BUGFIX] Remove non-existing "pseudo-site" logic 23/61123/2
Benni Mack [Tue, 25 Jun 2019 04:16:15 +0000 (06:16 +0200)]
[BUGFIX] Remove non-existing "pseudo-site" logic

There are some leftovers where PseudoSite is mentioned.

Since TYPO3 v10.0 is built on Site Handling completely,
this logic is removed.

Resolves: #88625
Releases: master
Change-Id: I9f3b3a6c9a4bf29c2b509246c02d64aa5f536b4e
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/61123
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Daniel Gorges <daniel.gorges@b13.de>
Tested-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
Reviewed-by: Daniel Gorges <daniel.gorges@b13.de>
Reviewed-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
9 months ago[TASK] Ensure PageArgumentValidator is not dependent on TSFE 41/60841/6
Benni Mack [Wed, 29 May 2019 20:49:25 +0000 (22:49 +0200)]
[TASK] Ensure PageArgumentValidator is not dependent on TSFE

Checking if cHash matches any GET parameters can be
done without $TSFE->cHash_array and $TSFE->hash as
all data is built inside PageArguments already.

However, $TSFE->cHash_array is still necessary and
filled as before when ->setPageArguments() is called.

This is a precursor to re-structure the dependencies within
TSFE and PSR-15 middlewares.

Resolves: #88460
Releases: master
Change-Id: I43c2fdc1049d451b3fc9bc06a57b744703a7a323
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/60841
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Daniel Gorges <daniel.gorges@b13.de>
Tested-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Reviewed-by: Daniel Gorges <daniel.gorges@b13.de>
Reviewed-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
9 months ago[TASK] Unify Backend Route paths for modules 33/60433/5
Benni Mack [Tue, 9 Apr 2019 15:34:08 +0000 (17:34 +0200)]
[TASK] Unify Backend Route paths for modules

Modules which do not set a proper route path themselves
now have a different route path, basically "/module/file/list"
for example, whereas there is a proper prefix with
"/module/" and no trailing slash anymore.

It is still possible to build links to the route paths,
and resolve them properly.

The "old" route paths will stop working in TYPO3 v11.0.

Resolves: #82669
Releases: master
Change-Id: If976df458e87b1199933cf1c42c5d3d8ff2407ba
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/60433
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Susanne Moog <look@susi.dev>
Tested-by: Daniel Gorges <daniel.gorges@b13.de>
Tested-by: Benni Mack <benni@typo3.org>
Reviewed-by: Susanne Moog <look@susi.dev>
Reviewed-by: Daniel Gorges <daniel.gorges@b13.de>
Reviewed-by: Benni Mack <benni@typo3.org>
9 months ago[TASK] Use generators for service objects in Authentication 95/61095/5
Benni Mack [Wed, 19 Jun 2019 14:04:13 +0000 (16:04 +0200)]
[TASK] Use generators for service objects in Authentication

The introduction of the Session Framework API in v8
introduced generators for fetching authentication service
objects within `AbstractUserAuthentication`.

Some places were however forgotten, which can
safely replaced with the `$this->getAuthServices()`
method.

Resolves: #88594
Releases: master
Change-Id: I987150be574232b549340f4766bb963baa17fd60
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/61095
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Alexander Schnitzler <review.typo3.org@alexanderschnitzler.de>
Tested-by: Daniel Gorges <daniel.gorges@b13.de>
Tested-by: Benni Mack <benni@typo3.org>
Reviewed-by: Alexander Schnitzler <review.typo3.org@alexanderschnitzler.de>
Reviewed-by: Daniel Gorges <daniel.gorges@b13.de>
Reviewed-by: Benni Mack <benni@typo3.org>
9 months ago[SECURITY] Disallow insecure deserialization for l18n_diffsource 46/61146/2
Oliver Hader [Tue, 25 Jun 2019 06:42:25 +0000 (08:42 +0200)]
[SECURITY] Disallow insecure deserialization for l18n_diffsource

Serialized values in l18n_diffsource are vulnerable to insecure
deserialization when being invoked in FormEngine or DataHandler.

Resolves: #88323
Releases: master, 9.5, 8.7
Security-Commit: 215de3e52140dc69ccb0e5802ab4234922b1aa63
Security-Bulletin: TYPO3-CORE-SA-2019-020
Change-Id: I03704b35d94e2575e9231656977f3760e6f04e2b
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/61146
Tested-by: Oliver Hader <oliver.hader@typo3.org>
Reviewed-by: Oliver Hader <oliver.hader@typo3.org>
9 months ago[SECURITY] Deny pages' TSconfig and tsconfig_includes for non-admins 45/61145/2
Oliver Hader [Tue, 25 Jun 2019 06:42:09 +0000 (08:42 +0200)]
[SECURITY] Deny pages' TSconfig and tsconfig_includes for non-admins

Fields `TSconfig` and `tsconfig_includes` of table `pages` can be
misused by restricted users to contain malicious instructions and
lead to cross-site scripting as well as arbitrary code execution.
Since user input cannot be sanitized properly, the field is now
available for admin users only. In addition directory traversal
in TSconfig static includes has been mitigated.

Resolves: #88565
Releases: master, 9.5, 8.7
Security-Commit: b4ab9cd1f0539b3af675b94aa01d26e5c4b3a1d9
Security-Bulletin: TYPO3-CORE-SA-2019-019
Change-Id: I712364fde6a76ad761a0b738756cb151dc5c22e1
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/61145
Tested-by: Oliver Hader <oliver.hader@typo3.org>
Reviewed-by: Oliver Hader <oliver.hader@typo3.org>
9 months ago[!!!][SECURITY] Disallow session data transfer on frontend user logout 44/61144/2
Oliver Hader [Tue, 25 Jun 2019 06:41:55 +0000 (08:41 +0200)]
[!!!][SECURITY] Disallow session data transfer on frontend user logout

When frontend users logged out their session data (e.g. shopping cart)
was transfered into an anonymous session. This session could have been
reused by a different user working with the very same browser.

In order to enhance security aspects on this topic session data is
purged when an according frontend user is logging out. Since this might
be breaking for some scenarios a new feature toggle has been introduced
which allows to keep the previous behavior:

boolean 'security.frontend.keepSessionDataOnLogout'
in $GLOBALS['TYPO3_CONF_VARS']['SYS']['features']

Resolves: #88139
Releases: master, 9.5, 8.7
Security-Commit: 89c45f80388f24f08f827c474daa5ab8fda63da2
Security-Bulletin: TYPO3-CORE-SA-2019-018
Change-Id: I869f3bee7c6bf6e2ae51bcd86273b6abc15f09c5
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/61144
Tested-by: Oliver Hader <oliver.hader@typo3.org>
Reviewed-by: Oliver Hader <oliver.hader@typo3.org>
9 months ago[SECURITY] Deny access to import module for non-admin users 43/61143/2
Oliver Hader [Tue, 25 Jun 2019 06:41:42 +0000 (08:41 +0200)]
[SECURITY] Deny access to import module for non-admin users

Due to an incomplete condition it was possible for regular
backend users to make use of the import module - which only
would be accessible to admin users or to those users have
User TSconfig `options.impexp.enableImportForNonAdminUser`
enabled.

Resolves: #88284
Releases: master, 9.5
Security-Commit: a3ca05df1e9e9269b45daf9dd79517df9d202604
Security-Bulletin: TYPO3-CORE-SA-2019-017
Change-Id: I9ac9a026d5715f9c03eda37f0ef84178640b2f1d
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/61143
Tested-by: Oliver Hader <oliver.hader@typo3.org>
Reviewed-by: Oliver Hader <oliver.hader@typo3.org>
9 months ago[SECURITY] Conflict insecure versions symfony/cache component 42/61142/2
Benni Mack [Tue, 25 Jun 2019 06:41:29 +0000 (08:41 +0200)]
[SECURITY] Conflict insecure versions symfony/cache component

The symfony/cache component is not directly used by the core but
is a dependency of symfony/expression-language which is used in
the core.

The affected symfony/cache packages have been marked as
"conflict" in the composer.json.

See https://symfony.com/blog/cve-2019-10912-prevent-destructors-with-side-effects-from-being-unserialized

Resolves: #88215
Releases: master, 9.5
Security-Commit: d13c36e9e9951030a0787c63674634a52ff0aae3
Security-Bulletin: TYPO3-CORE-SA-2019-016
Change-Id: If98391ceef88561507d0095d26455a8da128f01e
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/61142
Tested-by: Oliver Hader <oliver.hader@typo3.org>
Reviewed-by: Oliver Hader <oliver.hader@typo3.org>
9 months ago[SECURITY] Disallow javascript & data scheme in URL link handler 41/61141/2
Oliver Hader [Tue, 25 Jun 2019 06:41:16 +0000 (08:41 +0200)]
[SECURITY] Disallow javascript & data scheme in URL link handler

URLs defined using TYPO3's internal t3://url/?url=... notation are
now hardened against using `javascript:` and`data:` URL schemes.

Resolves: #88476
Releases: master, 9.5, 8.7
Security-Commit: 1a873c662524a62b192661da45d27e223e517d18
Security-Bulletin: TYPO3-CORE-SA-2019-015
Change-Id: Ia9ca8784a1779492762e5a36fcb1ada67bb6c56a
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/61141
Tested-by: Oliver Hader <oliver.hader@typo3.org>
Reviewed-by: Oliver Hader <oliver.hader@typo3.org>
9 months ago[SECURITY] Check record permissions in record information popup 40/61140/2
Andreas Fernandez [Tue, 25 Jun 2019 06:41:03 +0000 (08:41 +0200)]
[SECURITY] Check record permissions in record information popup

The ElementInformationController now checks a backend user has sufficient
permissions to see each referenced record.

Resolves: #88317
Releases: master, 9.5, 8.7
Security-Commit: 4322d6b827c09b98b35ab4ef47753e9c20f7f117
Security-Bulletin: TYPO3-CORE-SA-2019-014
Change-Id: I49d077e5628465111b4460dd3cb673182d09eaa0
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/61140
Tested-by: Oliver Hader <oliver.hader@typo3.org>
Reviewed-by: Oliver Hader <oliver.hader@typo3.org>
9 months ago[!!!][TASK] Remove TCEMAIN.previewDomain 73/60773/10
Benni Mack [Fri, 17 May 2019 11:06:49 +0000 (13:06 +0200)]
[!!!][TASK] Remove TCEMAIN.previewDomain

The functionality to set a custom TCEMAIN.previewDomain via
PageTS is not in use anymore as SiteHandling
is using the proper domain anyway already.

Conceptually this does not work anymore, as the base (domain + path prefix)
determines Language + Site / PageTree entry point. Setting
this to something else via TCEMAIN.previewDomain would not work
anyways, so this hack is removed, as we now can safely
determine the full (speaking) URL with Site Handling.

In addition, the method BackendUtility::getViewDomain()
is now deprecated.

Resolves: #88499
Releases: master
Change-Id: Id88c16e2e86ccce8a2e7be02af0e2a39802624c0
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/60773
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Susanne Moog <look@susi.dev>
Tested-by: Daniel Gorges <daniel.gorges@b13.de>
Tested-by: Benni Mack <benni@typo3.org>
Reviewed-by: Susanne Moog <look@susi.dev>
Reviewed-by: Daniel Gorges <daniel.gorges@b13.de>
Reviewed-by: Benni Mack <benni@typo3.org>
9 months ago[TASK] Follow-up: Change BitSet class doc block 00/61100/4
Alexander Schnitzler [Thu, 20 Jun 2019 11:26:31 +0000 (13:26 +0200)]
[TASK] Follow-up: Change BitSet class doc block

In order to have a meaningful class doc block for the
BitSet class, the former doc block has been replaced
with an explanation of how to use the BitSet class.
The explanation is similar to the one in the rst file
which has been introduced along the class.

Releases: master
Resolves: #88611
Releates: #88596
Change-Id: Ie6c5043a38db612f050438123ab9cd12d8030e9c
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/61100
Reviewed-by: Oliver Klee <typo3-coding@oliverklee.de>
Reviewed-by: Björn Jacob <bjoern.jacob@tritum.de>
Reviewed-by: Alexander Schnitzler <typo3@alexanderschnitzler.de>
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Björn Jacob <bjoern.jacob@tritum.de>
Tested-by: Alexander Schnitzler <typo3@alexanderschnitzler.de>
9 months ago[TASK] Remove backend user ID from workspace preview config 08/61108/2
Benni Mack [Fri, 21 Jun 2019 11:01:51 +0000 (13:01 +0200)]
[TASK] Remove backend user ID from workspace preview config

The configuration within `sys_preview` contained the
Backend User ID. Previously, until TYPO3 v9, this was
used to simulate a backend user with his/her permissions,
however this was changed with the introduction of Middlewares
and a custom PreviewUserAuthentication object.

This information does not need to be stored, as it hasn't
been evaluated anymore anyways.

Resolves: #88601
Releases: master
Change-Id: I2b3c4979f38a3c1343a0f5bff3c2bd762affc0e1
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/61108
Tested-by: Daniel Goerz <daniel.goerz@posteo.de>
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Alexander Schnitzler <typo3@alexanderschnitzler.de>
Tested-by: Benni Mack <benni@typo3.org>
Reviewed-by: Daniel Goerz <daniel.goerz@posteo.de>
Reviewed-by: Alexander Schnitzler <typo3@alexanderschnitzler.de>
Reviewed-by: Benni Mack <benni@typo3.org>
9 months ago[BUGFIX] Fix comment in ViewHelper action.link 20/61120/2
Joerg Kummer [Sun, 23 Jun 2019 22:22:32 +0000 (00:22 +0200)]
[BUGFIX] Fix comment in ViewHelper action.link

Correct closing tag in PHP comment example.

Resolves: #88619
Releases: master, 9.5
Change-Id: Ic90351399eccc4435231bbd4ccbc74c33727d70c
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/61120
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Björn Jacob <bjoern.jacob@tritum.de>
Tested-by: Daniel Siepmann <daniel.siepmann@typo3.org>
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Reviewed-by: Björn Jacob <bjoern.jacob@tritum.de>
Reviewed-by: Daniel Siepmann <daniel.siepmann@typo3.org>
Reviewed-by: Oliver Klee <typo3-coding@oliverklee.de>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
9 months ago[TASK] Move BitSet class into different namespace 98/61098/5
Alexander Schnitzler [Wed, 19 Jun 2019 16:26:23 +0000 (18:26 +0200)]
[TASK] Move BitSet class into different namespace

The BitSet class has been put into a DataStructure
namespace although the core puts classes of these
kind into a Type namespace. Therefore, the class
has been moved.

Releases: master
Resolves: #88596
Change-Id: I18385a5c761e002f36bc33dcaeeb26ce7f6d187e
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/61098
Reviewed-by: Oliver Klee <typo3-coding@oliverklee.de>
Reviewed-by: Mathias Brodala <mbrodala@pagemachine.de>
Reviewed-by: Benni Mack <benni@typo3.org>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Benni Mack <benni@typo3.org>
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Tested-by: Alexander Schnitzler <typo3@alexanderschnitzler.de>
9 months ago[TASK] Rename "view helper" to "ViewHelper" 03/61103/2
Daniel Siepmann [Fri, 21 Jun 2019 07:12:45 +0000 (09:12 +0200)]
[TASK] Rename "view helper" to "ViewHelper"

As this is what its called. This also should make searches easier, as
there is only one way to write it.

Relates: #88600
Releases: master, 9.5
Change-Id: Ib6fcd4402b4a34aeaf0735a40788a18a324587dd
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/61103
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: Tom Warwick <tom.warwick@typo3.org>
Tested-by: Björn Jacob <bjoern.jacob@tritum.de>
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Reviewed-by: Claus Due <claus@phpmind.net>
Reviewed-by: Björn Jacob <bjoern.jacob@tritum.de>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
9 months ago[BUGFIX] Remove caches for page title and meta tag 20/60520/12
Helmut Hummel [Fri, 19 Apr 2019 16:03:31 +0000 (18:03 +0200)]
[BUGFIX] Remove caches for page title and meta tag

By concept for frontend rendering the page title and meta tags
are not meant to be stored in page cache in order to allow
non cachable plugins to modify those.

Currently both page title and meta tags are stored
in separate cache entries, which violates the concept above
and unnecessarily tightly couples those code parts to the
TypoScriptFrontendController and internal logic of it.

This patch removes these caches.

In order to properly handle the uncached rendering state,
we make sure the meta tag registry is properly
serialized with all managers.

Resolves: #88179
Releases: master, 9.5
Change-Id: If5200398bf9ab9db09ab97403c976d82cb33d01d
Signed-off-by: Frank Naegler <frank.naegler@typo3.org>
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/60520
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Helmut Hummel <typo3@helhum.io>
Tested-by: Richard Haeser <richard@maxserv.com>
Reviewed-by: Helmut Hummel <typo3@helhum.io>
Reviewed-by: Richard Haeser <richard@maxserv.com>
9 months ago[BUGFIX] Use var path from Environment in tests 46/60946/7
Susanne Moog [Wed, 12 Jun 2019 11:15:28 +0000 (13:15 +0200)]
[BUGFIX] Use var path from Environment in tests

Some tests still use hardcoded 'typo3temp' for creating files and folders.
Where possible, this has been changed to use varPath from Environment class
instead.

Resolves: #88551
Releases: master
Change-Id: I2d9a8edfb3fb33cc8f86f8e487603d0c72ef3ff0
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/60946
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Frank Naegler <frank.naegler@typo3.org>
Tested-by: Benni Mack <benni@typo3.org>
Reviewed-by: Frank Naegler <frank.naegler@typo3.org>
Reviewed-by: Benni Mack <benni@typo3.org>
9 months ago[TASK] Update symfony components 96/61096/2
Benni Mack [Wed, 19 Jun 2019 16:21:39 +0000 (18:21 +0200)]
[TASK] Update symfony components

In preparation for our next maintenance
release, symfony components are updated
to their latest versions.

Composer Command:
  composer update symfony/* --with-all-dependencies

Resolves: #88595
Releases: master, 9.5
Change-Id: Ib380cbe7fec57488bf0ca10328486bc9c5fcbd5c
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/61096
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Alexander Schnitzler <typo3@alexanderschnitzler.de>
Tested-by: Markus Klein <markus.klein@typo3.org>
Tested-by: Benni Mack <benni@typo3.org>
Reviewed-by: Alexander Schnitzler <typo3@alexanderschnitzler.de>
Reviewed-by: Markus Klein <markus.klein@typo3.org>
Reviewed-by: Benni Mack <benni@typo3.org>
9 months ago[BUGFIX] Remove "cache_" prefix from cache configuration keys 92/60892/2
Oliver Hader [Thu, 6 Jun 2019 17:31:40 +0000 (19:31 +0200)]
[BUGFIX] Remove "cache_" prefix from cache configuration keys

With #88366 "cache_" prefix has been deprecated. However, when
retrieving a deprecated cache like "cache_subject" its identifier
gets transformed to just "subject" which is (probably) not available
in cache configuration keys. That's why keys of cache configurations
have to be transformed as well.

Resolves: #88512
Releases: master
Change-Id: I224d55e71011a437ed2e990d13b1edbee08770b7
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/60892
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Benni Mack <benni@typo3.org>
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Reviewed-by: Benni Mack <benni@typo3.org>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
9 months ago[BUGFIX] Speed up SiteConfiguration loading 78/61078/4
Benni Mack [Mon, 17 Jun 2019 19:39:18 +0000 (21:39 +0200)]
[BUGFIX] Speed up SiteConfiguration loading

Profiling shows that when linking to 100
pages, SiteFinder (which instantiates SiteConfiguration)
is instantiated 100 times. Although SiteFinder information
might change during one request, the SiteConfiguration
does not (except when updating the Configuration via API).

So, a first-level-cache can be used to avoid calls
to "cache_core" multiple times during one request,
and SiteConfiguration can become a Singleton instance.

Resolves: #88577
Releases: master, 9.5
Change-Id: I3d9167da9442d684d32a73d6cf2003c91bdf4d68
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/61078
Tested-by: Benjamin Franzke <bfr@qbus.de>
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Daniel Goerz <daniel.goerz@posteo.de>
Tested-by: Benni Mack <benni@typo3.org>
Reviewed-by: Benjamin Franzke <bfr@qbus.de>
Reviewed-by: Daniel Goerz <daniel.goerz@posteo.de>
Reviewed-by: Benni Mack <benni@typo3.org>
9 months ago[BUGFIX] Add additional GetVars to workspace preview url 33/59133/2
Devid Messner [Thu, 13 Dec 2018 14:51:16 +0000 (15:51 +0100)]
[BUGFIX] Add additional GetVars to workspace preview url

Resolves: #87147
Releases: master, 9.5
Change-Id: Ia909104bc663d4191f21cb1bf0e25c0212388e2f
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/59133
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Benni Mack <benni@typo3.org>
Tested-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
Reviewed-by: Benni Mack <benni@typo3.org>
Reviewed-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
9 months ago[BUGFIX] Use proper configuration when processing FlexForms in DataHandler 02/60902/6
Benni Mack [Mon, 17 Jun 2019 06:37:15 +0000 (08:37 +0200)]
[BUGFIX] Use proper configuration when processing FlexForms in DataHandler

This change removes the "TCEforms" option when parsing
FlexForms data in DataHandler, when dealing with FlexForms
that contain sheets.

This way, FlexForms RTE configuration is properly set
and no double spacings for linebreaks are used.

According to the issue, this only happened when
fields specifically within sheets are configured,
for fields without sheets, this has been working
already.

In order to ensure both cases are working, tests
are applied for both variants.

Resolves: #80778
Resolves: #81748
Releases: master, 9.5, 8.7
Change-Id: I38facfa9e1065d4730f895aa178a049c07c443f8
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/60902
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Jan Kornblum <jan.kornblum@gmx.de>
Tested-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
Reviewed-by: Jan Kornblum <jan.kornblum@gmx.de>
Reviewed-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
9 months ago[TASK] Install Tool: Move common code into abstract class 97/60897/9
Andreas Fernandez [Fri, 7 Jun 2019 11:51:49 +0000 (13:51 +0200)]
[TASK] Install Tool: Move common code into abstract class

All modules of the Install Tool used in modal windows now share a common
abstract class that contains some boilerplate code required for most
modules.

Resolves: #88518
Releases: master
Change-Id: I0c2f03f098c731e5a0c499ce91400c22a8c1f890
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/60897
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Jonas Eberle <flightvision@googlemail.com>
Tested-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
Reviewed-by: Simon Gilli <typo3@gilbertsoft.org>
Reviewed-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
9 months ago[TASK] Upgrade TYPO3 testing framework 81/61081/3
Susanne Moog [Tue, 18 Jun 2019 09:27:10 +0000 (11:27 +0200)]
[TASK] Upgrade TYPO3 testing framework

composer require --dev typo3/testing-framework:~5.0.10

Releases: master
Resolves: #88580
Change-Id: I1dcef11cee0caa730463919146b3732d7838e683
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/61081
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Benni Mack <benni@typo3.org>
Reviewed-by: Benni Mack <benni@typo3.org>
9 months ago[TASK] Update doctrine/dbal to ^2.9 80/61080/2
Manuel Selbach [Tue, 18 Jun 2019 08:01:03 +0000 (10:01 +0200)]
[TASK] Update doctrine/dbal to ^2.9

doctrine/dbal 2.8.x ran into unmaintained mode:
https://www.doctrine-project.org/projects/dbal.html

We should upgrade to at least 2.9:

    composer req doctrine/dbal:^2.9

Resolves: #88579
Releases: master
Change-Id: I18962bd313018abec8e52bada6df9aca6aa4143f
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/61080
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Benni Mack <benni@typo3.org>
Tested-by: Susanne Moog <look@susi.dev>
Reviewed-by: Benni Mack <benni@typo3.org>
Reviewed-by: Susanne Moog <look@susi.dev>
9 months ago[BUGFIX] Fix comment in ViewHelper page.link 79/61079/2
Sybille Peters [Tue, 18 Jun 2019 04:38:54 +0000 (06:38 +0200)]
[BUGFIX] Fix comment in ViewHelper page.link

Resolves: #88578
Releases: master, 9.5
Change-Id: I5fc57a9c61d5f02838f3afd3c305ae0b7b037dfc
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/61079
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Björn Jacob <bjoern.jacob@tritum.de>
Tested-by: Mathias Brodala <mbrodala@pagemachine.de>
Tested-by: Benjamin Franzke <bfr@qbus.de>
Reviewed-by: Joerg Kummer <typo3@enobe.de>
Reviewed-by: Björn Jacob <bjoern.jacob@tritum.de>
Reviewed-by: Mathias Brodala <mbrodala@pagemachine.de>
Reviewed-by: Benjamin Franzke <bfr@qbus.de>
9 months ago[BUGFIX] Fix getSiteFinder() mocking in SiteProcessorTest 74/61074/2
Benjamin Franzke [Mon, 17 Jun 2019 14:32:31 +0000 (16:32 +0200)]
[BUGFIX] Fix getSiteFinder() mocking in SiteProcessorTest

As it produced a warning:
1) TYPO3\CMS\Frontend\Tests\Unit\DataProcessing\SiteProcessorTest::
  nullIsProvidedIfSiteCouldNotBeRetrieved
Trying to configure method "getSiteFinder" which cannot be configured
because it does not exist, has not been specified, is final, or is static

Resolves: #88576
Related: #88568
Releases: master
Change-Id: Icf72100282ce24c87b6bb9f49fc978b6187a817e
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/61074
Tested-by: Benni Mack <benni@typo3.org>
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Benjamin Franzke <bfr@qbus.de>
Reviewed-by: Benni Mack <benni@typo3.org>
Reviewed-by: Benjamin Franzke <bfr@qbus.de>
9 months ago[BUGFIX] Improve wording in Install Tool 40/61040/2
Jonas Eberle [Fri, 14 Jun 2019 19:15:09 +0000 (21:15 +0200)]
[BUGFIX] Improve wording in Install Tool

Rephrases button title and success message for user preference
reset.

Resolves: #88520
Releases: master, 9.5
Change-Id: Ib2d3180a417366249df8fa9c1faa47c74cca022a
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/61040
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Tested-by: Tymoteusz Motylewski <t.motylewski@gmail.com>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Reviewed-by: Tymoteusz Motylewski <t.motylewski@gmail.com>
9 months ago[TASK] Update doctrine/dbal to ^2.8.1 94/60994/5
Manuel Selbach [Thu, 13 Jun 2019 07:50:01 +0000 (09:50 +0200)]
[TASK] Update doctrine/dbal to ^2.8.1

doctrine/dbal 2.8.x ran into unmaintained mode:
https://www.doctrine-project.org/projects/dbal.html

We should upgrade to at least 2.9:

    composer req doctrine/dbal:^2.8.1

which installs 2.9.2

Resolves: #88553
Releases: master, 9.5
Change-Id: Id0c20cbb3102b5086e1c4d9dcef1b32fed67db7d
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/60994
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Benni Mack <benni@typo3.org>
Tested-by: Susanne Moog <look@susi.dev>
Tested-by: Manuel Selbach <manuel_selbach@yahoo.de>
Reviewed-by: Benni Mack <benni@typo3.org>
Reviewed-by: Susanne Moog <look@susi.dev>
Reviewed-by: Manuel Selbach <manuel_selbach@yahoo.de>
9 months ago[TASK] Switch Locales to regular singleton instance 46/61046/5
Benni Mack [Mon, 17 Jun 2019 04:50:52 +0000 (06:50 +0200)]
[TASK] Switch Locales to regular singleton instance

Locales resolves the user-defined TYPO3-languages and
its dependencies via TYPO3_CONF_VARS, which are only
finally available when all extensions' ext_localconf.php is included.

For this reason, Locales::initialize() can be deprecated
and moved into the regular constructor, but then the Bootstrap
should not do the initialization anymore, which happens
at the point now, when Locales first gets initialized (which
happens in Frontend within TSFE and PageRenderer and
in Backend within $LANG).

For this reason, it is removed from Bootstrap, where it was
first placed in TYPO3 4.6 when no proper bootstrap
set up was given.

Resolves: #88569
Releases: master
Change-Id: Ife2e248412c1b206abffcdd21df0d01e44834cea
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/61046
Tested-by: Benjamin Franzke <bfr@qbus.de>
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Tested-by: TYPO3com <noreply@typo3.com>
Reviewed-by: Benjamin Franzke <bfr@qbus.de>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
9 months ago[TASK] Replace SiteMatcher with SiteFinder where applicable 43/61043/2
Benni Mack [Fri, 14 Jun 2019 21:27:13 +0000 (23:27 +0200)]
[TASK] Replace SiteMatcher with SiteFinder where applicable

SiteMatcher is a container around SiteFinder now as PseudoSite
handling was removed, so SiteFinder can be used directly.

Resolves: #88568
Releases: master
Change-Id: Ib0f5a42351ed5c11c25458b74074b80f5c574bbd
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/61043
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Tested-by: Benjamin Franzke <bfr@qbus.de>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Reviewed-by: Benjamin Franzke <bfr@qbus.de>
9 months ago[!!!][TASK] Do not magically register validators 98/60298/12
Alexander Schnitzler [Tue, 19 Mar 2019 14:21:54 +0000 (14:21 +0000)]
[!!!][TASK] Do not magically register validators

This patch removes the automatical registration of two types
of validators.

- model validators
- type validators

Model validators are those validators that follow a specific
namespace and class naming derived from domain models.

Given a model \Vendor\Extension\Domain\Model\Foo, extbase searched
for a valiator \Vendor\Extension\Domain\Validator\FooValidator.

If it existed, it had been registered automatically and could not
be disabled at all.

Type validators are similiar to model validators. Given a non
model action parameter or model property like int, string, float,
DateTime and such, extbase searched for validators in the
namespace TYPO3\CMS\Extbase\Validation\Validator.

There is a TYPO3\CMS\Extbase\Validation\Validator\StringValidator
for example which had been registered for string type params and
properties.

Said validators could not be disabled at all.

There are several reasons why the automatic registration has been
removed:

- First of all, this behaviour led to an unknown amount of actual
  registered validators. Developers that are new or simply not
  familiar with the concept of validation magic could easily
  become frustrated.

- Then there is the problem that validation takes place, no matter
  if it was needed or wanted. A domain validator, which looked
  quite handy in the first place, had to be reduced to the
  validation logic that would fit all cases where according
  objects had been passed into methods. No matter the context.
  The context however matters a lot. One might want to have
  different validation rules depending on if objects are
  created, updated or deleted. This distinction was impossible
  and therefore model validators could be a burden.

- Last but not least, the automatic registration is a problem
  when introducing validation groups. Validation groups cover
  the context aspect mentioned earlier. By grouping validations
  one can create and register different validators and apply
  them given by contexts like create, update, delete and such.

Releases: master
Resolves: #87957
Change-Id: If8f590a1bedb428c8884cd61828d8cc671ee92e1
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/60298
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Stefan Froemken <froemken@gmail.com>
Tested-by: Benni Mack <benni@typo3.org>
Reviewed-by: Stefan Froemken <froemken@gmail.com>
Reviewed-by: Benni Mack <benni@typo3.org>
9 months ago[BUGFIX] Fix tests on windows 45/60945/6
Susanne Moog [Wed, 12 Jun 2019 10:55:11 +0000 (12:55 +0200)]
[BUGFIX] Fix tests on windows

Some unit tests still have problems on Windows.
- setlocale will not error even if the locale is not found
- file permissions don't work the same as the unix style version
- absolute paths do not start with a slash
- files from finder may contain mixed slashes - generating different hash values when used as key

Tests have either been adjusted to accomodate the differing behaviour or
skipped if appropriate.

Resolves: #88552
Releases: master
Change-Id: I32344c2a0a0797db087a3ccad45d3b626715ab77
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/60945
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Benjamin Kott <benjamin.kott@outlook.com>
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Reviewed-by: Benjamin Kott <benjamin.kott@outlook.com>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
9 months ago[!!!][TASK] Drop PageTS "TSFE.constants" functionality 34/61034/3
Benni Mack [Fri, 14 Jun 2019 10:49:14 +0000 (12:49 +0200)]
[!!!][TASK] Drop PageTS "TSFE.constants" functionality

When parsing TypoScript, PageTSconfig and UserTSconfig
is taking into account for evaluting if "TSFE.constants" is
set in PageTSconfig. If this is used, this acts as a default
constant.

However, this feature has various drawbacks, and has been
superseded by actually having constants globally (FE/BE) and via
Conditions available.

For frontend calls with empty pagesection caches, this improves
performance greatly, especially in pages on a deeper level (recursion).

This also reduces the footprint to have the TypoScriptParser (incl.
condition matching) being called too often.

Resolves: #88564
Releases: master
Change-Id: Icbdfa9918a9a79510a87198bf033c4de96d71107
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/61034
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Georg Ringer <georg.ringer@gmail.com>
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Reviewed-by: Georg Ringer <georg.ringer@gmail.com>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
9 months ago[TASK] Deprecate unused methods of VersionNumberUtility 97/60997/7
Georg Ringer [Thu, 13 Jun 2019 09:36:40 +0000 (11:36 +0200)]
[TASK] Deprecate unused methods of VersionNumberUtility

The following methods of `\TYPO3\CMS\Core\Utility\VersionNumberUtility`
are unused and can be deprecated:

- `splitVersionRange`
- `raiseVersionNumber`
- `convertIntegerToVersionNumber`

Resolves: #88554
Releases: master
Change-Id: I28378a39d7cae4d2ae09cfb6a85c5d294565a2f7
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/60997
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Markus Klein <markus.klein@typo3.org>
Tested-by: Benni Mack <benni@typo3.org>
Reviewed-by: Markus Klein <markus.klein@typo3.org>
Reviewed-by: Oliver Klee <typo3-coding@oliverklee.de>
Reviewed-by: Benni Mack <benni@typo3.org>
9 months ago[!!!][TASK] Re-organize variable initialization for User Authentication 75/60875/11
Benni Mack [Tue, 4 Jun 2019 11:00:44 +0000 (13:00 +0200)]
[!!!][TASK] Re-organize variable initialization for User Authentication

There are a lot of places where AbstractUserAuthentication
and the dependents (BE/FE user auth) set various settings,
both in the constructor and the start() method.

All possible settings are now moved to the constructor,
or to dependent properties in subclasses.

Some changes are now in place:
- UserAuth->loginType must be set now (which was previously
  in start()). This is now checked in the constructor.
- Most of the variables (sessionTimeout/sessionDateLifetime) are
  now set and evaluated inside the constructor, making start()
  much simpler to understand and read.

Resolves: #88527
Releases: master
Change-Id: Ie03b8b93f869f5bafae8f660d6c983bec308f2fa
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/60875
Reviewed-by: Markus Klein <markus.klein@typo3.org>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Reviewed-by: Georg Ringer <georg.ringer@gmail.com>
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Tested-by: Georg Ringer <georg.ringer@gmail.com>
9 months ago[BUGFIX] t3editor: Harden some checks for TS parsing 00/60900/4
Andreas Fernandez [Fri, 7 Jun 2019 15:52:39 +0000 (17:52 +0200)]
[BUGFIX] t3editor: Harden some checks for TS parsing

Resolves: #88262
Resolves: #85346
Releases: master, 9.5
Change-Id: Ia72ef1b670841d90ec0251c99b7f4d3dc1e7770a
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/60900
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Riccardo De Contardi <erredeco@gmail.com>
Tested-by: Sven Juergens <typo3@blue-side.de>
Tested-by: Georg Ringer <georg.ringer@gmail.com>
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Reviewed-by: Georg Ringer <georg.ringer@gmail.com>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
9 months ago[TASK] Create Redirect instead of silently ignoring superfluous cHash 05/60905/7
Benni Mack [Sat, 8 Jun 2019 18:20:40 +0000 (20:20 +0200)]
[TASK] Create Redirect instead of silently ignoring superfluous cHash

Introduced with https://review.typo3.org/c/Packages/TYPO3.CMS/+/60895
cHash's that are used within the URL but not needed
anymore, should rather create a redirect instead
of silently unsetting the cHash argument.

Related: #41033
Resolves: #88531
Releases: master, 9.5
Change-Id: Iaae3e72160c055f8848942d506f7cc3e25d31af4
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/60905
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Nicole Cordes <typo3@cordes.co>
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Reviewed-by: Nicole Cordes <typo3@cordes.co>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
9 months ago[!!!][TASK] Remove config.htmlTag TypoScript properties 03/61003/3
Benni Mack [Thu, 13 Jun 2019 13:37:43 +0000 (15:37 +0200)]
[!!!][TASK] Remove config.htmlTag TypoScript properties

The two TypoScript options

* config.htmlTag_langKey
* config.htmlTag_dir

have been removed, as they have no effect anymore in TYPO3 v10,
which only works with Site Handling.

Site Handlings "direction" and "twoLetterIsoCode" are already
in place and used when Site Handling is active.

Resolves: #88560
Releases: master
Change-Id: I8ef2a8b8ccd9c790fd7db940e908e8a362ec4ca3
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/61003
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
Tested-by: Benni Mack <benni@typo3.org>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Reviewed-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
Reviewed-by: Benni Mack <benni@typo3.org>
9 months ago[TASK] Streamline TSFE/RequestHandler for "Page Generation" 98/60998/2
Benni Mack [Thu, 13 Jun 2019 09:42:17 +0000 (11:42 +0200)]
[TASK] Streamline TSFE/RequestHandler for "Page Generation"

Various documentation in TSFE is updated,
in addition to having $TSFE->setAbsRefPrefix()
to be set within the postProcessing to overcome
issues when the call is forgotten in custom
TSFE instances.

Resolves: #88555
Releases: master
Change-Id: Ib3ce22db1e6ce7b0985d486d584c26f25755efa4
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/60998
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Georg Ringer <georg.ringer@gmail.com>
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Reviewed-by: Georg Ringer <georg.ringer@gmail.com>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
9 months ago[BUGFIX] Fix page caching with tree.rootLineIds condition check 71/60771/7
Dmytro Nozdrin [Thu, 16 May 2019 18:06:49 +0000 (21:06 +0300)]
[BUGFIX] Fix page caching with tree.rootLineIds condition check

Conditions with `tree.rootLineIds` if matched caused page cache
regeneration on each request.

Resolves: #88374
Releases: master, 9.5
Change-Id: I5a9a2a429a80575b654a6894a3515c8ca8ec8db4
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/60771
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Benjamin Kott <benjamin.kott@outlook.com>
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Reviewed-by: Benjamin Kott <benjamin.kott@outlook.com>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
9 months ago[!!!][TASK] Move Frontend User session saving into Middleware 39/60939/5
Benni Mack [Wed, 12 Jun 2019 05:14:32 +0000 (07:14 +0200)]
[!!!][TASK] Move Frontend User session saving into Middleware

For further TSFE-related changes, the frontend request
workflow now stores user-/session-related information
in the middleware.

This is a first step in order to reduce the dependencies
of TSFE + FrontendUserAuthentication.

This patch is breaking as certain hooks (like EOFE)
do not have session data stored anymore.

Related: #88540
Resolves: #88541
Releases: master
Change-Id: I1e9a66b759d6edfd4c0e5a8ede02aa7a73b65b0f
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/60939
Tested-by: Georg Ringer <georg.ringer@gmail.com>
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Reviewed-by: Georg Ringer <georg.ringer@gmail.com>
Reviewed-by: Oliver Hader <oliver.hader@typo3.org>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
9 months ago[TASK] Set 'loginSecurityLevel' to normal by default 72/60972/5
Benni Mack [Wed, 12 Jun 2019 20:19:37 +0000 (22:19 +0200)]
[TASK] Set 'loginSecurityLevel' to normal by default

The only occurrence for 'loginSecurityLevel' checks for empty and falls back
to 'normal' (also defined in #81852 this must be set to normal).

Single usage in AbstractUserAuthentication:
trim($GLOBALS['TYPO3_CONF_VARS'][$this->loginType]['loginSecurityLevel']) ?: 'normal';

Instead of having this set to "factory configuration", (= writing to
LocalConfiguration.php on new installation), this can be set to 'normal'
in DefaultConfiguration directly.

EXT:rsaauth can be configured to set this to "rsa" in an instance
with RSA enabled (and has already done so before).

The main benefit is that this option (if set to "normal") can be
removed from LocalConfiguration if set to "normal" as it is then
taken from DefaultConfiguration.php

Resolves: #88549
Releases: master
Change-Id: I2f8c088230b334a03c5acf9d09721dd42e67c059
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/60972
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Markus Klein <markus.klein@typo3.org>
Tested-by: Georg Ringer <georg.ringer@gmail.com>
Reviewed-by: Markus Klein <markus.klein@typo3.org>
Reviewed-by: Georg Ringer <georg.ringer@gmail.com>
9 months ago[TASK] Add title to topbar buttons 62/60862/5
Gianluigi Martino [Mon, 3 Jun 2019 07:09:26 +0000 (09:09 +0200)]
[TASK] Add title to topbar buttons

Add title to the two topbar buttons on the left:
- Minimize/maximize module menu
- Collapse page tree

Resolves: #88385
Releases: master, 9.5
Change-Id: I9641bdf5454f1f50e6c4ab67c96f663b8b5d8c73
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/60862
Tested-by: Daniel Goerz <daniel.goerz@posteo.de>
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Sybille Peters <sypets@gmx.de>
Tested-by: Georg Ringer <georg.ringer@gmail.com>
Reviewed-by: Daniel Goerz <daniel.goerz@posteo.de>
Reviewed-by: Sybille Peters <sypets@gmx.de>
Reviewed-by: Oliver Klee <typo3-coding@oliverklee.de>
Reviewed-by: Georg Ringer <georg.ringer@gmail.com>
9 months ago[!!!][TASK] Remove "createDirs" directive of extension installation 85/60485/6
Benni Mack [Tue, 16 Apr 2019 06:36:50 +0000 (08:36 +0200)]
[!!!][TASK] Remove "createDirs" directive of extension installation

Extensions should make use of TYPO3's native functionality for
using FAL-based folders, or the Environment API and TYPO3's File
APIs to create folders when needed.

The ext_emconf.php option "createDirs" option is removed,
and not evaluted anymore.

The public method `ensureConfiguredDirectoriesExist` in FileHandling
Utility is removed, however the class is marked as internal.

This change is a pre-work for the CLI Initiative where there
are currently workarounds in using this functionality for "activating"
an extension.

Resolves: #88525
Releases: master
Change-Id: I52ec31da541d3740977068981944bd5a1dd0d2f7
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/60485
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Tested-by: Georg Ringer <georg.ringer@gmail.com>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Reviewed-by: Georg Ringer <georg.ringer@gmail.com>
9 months ago[!!!][TASK] Drop image support in RTE handling 86/60886/5
Benni Mack [Thu, 6 Jun 2019 05:02:34 +0000 (07:02 +0200)]
[!!!][TASK] Drop image support in RTE handling

With the introduction of CKEditor in TYPO3 v8, the support
for images in RTEs is dropped, however functionality was kept
for compatibility with RTEHtmlArea, which was still available in TYPO3 v8
as separate extension.

The functionality to handle images in CKEditor is possible to
be applied again, however, as this cannot be managed properly
via FAL in its current state, the previous functionality is remvoed
from Core. Separate CKEditor extensions as already published,
are able to manage the image handling in CKEditor directly already.

Dropped
* setting TYPO3_CONF_VARS[BE][RTE_imageStorageDir]
* transformation setting "ts_images".
* softref "images" logic
* ImportExport->getRTEoriginalFilename()
* RteHtmlParser->TS_images_rte()
* CLI Command: cleanup:rteimages and Class RteImagesCommand

Resolves: #88500
Releases: master
Change-Id: Ie564b19a7d0f9b7d46398094c8d7ecd845e31a65
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/60886
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Daniel Gorges <daniel.gorges@b13.de>
Tested-by: Benni Mack <benni@typo3.org>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Reviewed-by: Daniel Gorges <daniel.gorges@b13.de>
Reviewed-by: Benni Mack <benni@typo3.org>