[TASK] Deprecate TSFE-related properties and methods 17/51717/7
authorBenni Mack <benni@typo3.org>
Thu, 16 Feb 2017 12:18:20 +0000 (13:18 +0100)
committerSusanne Moog <susanne.moog@typo3.org>
Tue, 21 Feb 2017 14:37:05 +0000 (15:37 +0100)
commitc5554a378e80a830bb6a917d6b5eae2c67949fd3
tree2ea24a9994db807bf75029c8ea10efaf6893ee5d
parentc9ca950a3e4965a46e2924f05d8fb158e3ad8d08
[TASK] Deprecate TSFE-related properties and methods

There are some methods and properties which are conceptually in the
wrong place or are outdated.

$TSFE->compensateFieldWith (and config.compensateFieldWidth)
are not in use anymore (since TYPO3 7), as this belonged to
the very very old FORM cObject.

$TSFE->excludeCHashVars
was superseeded with cHash calculation in v6, but never removed.

$TSFE->scriptParseTime (and $TSFE->setParseTime())
is a public property and solely there for one use, storing the calculated
time between the request start and end. This does not need to be
located inside TSFE, as the functionality can be the same,
but built in the request handler, removing a cross-dependency.

$TSFE->generatePage_whichScript()
This alternative method to be used for including raw
PHP include files via requireOnce and config.pageGenScript
dates back to the plain PHP files index_ts.php and pagegen.php
which can safely be marked as outdated now via better PHP class
abstraction and hooks.

The overall goal is to achieve better separation of concerns,
and thus TSFE should only contain what it needs (dealing with rendering a
page based on TypoScript settings).

PageGenerator:: pagegenInit()
Unlike the other methods in PageGenerator this method has
one simple job: Setting $TSFE public properties based on TypoScript
settings. This surely needs to be merged into TSFE, as this is one of the
core jobs of TSFE. It also helps to avoid very unsuccessful attempts
to override certain parts of the Frontend Request as the static calls
to PageGenerator cannot be overriden at all.

TSFE->encryptCharcode and TSFE->encryptEmail()
Both are only needed in ContentObejctRenderer and are there
moved as protected methods and used solely there.

Resolves: #79858
Releases: master
Change-Id: Iabd351a0b5fd7c8cc242f66ba1e9799377fb9390
Reviewed-on: https://review.typo3.org/51717
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Georg Ringer <georg.ringer@gmail.com>
Tested-by: Georg Ringer <georg.ringer@gmail.com>
Reviewed-by: Susanne Moog <susanne.moog@typo3.org>
Tested-by: Susanne Moog <susanne.moog@typo3.org>
typo3/sysext/core/Documentation/Changelog/master/Deprecation-79858-TSFE-relatedPropertiesAndMethods.rst [new file with mode: 0644]
typo3/sysext/frontend/Classes/ContentObject/ContentObjectRenderer.php
typo3/sysext/frontend/Classes/Controller/TypoScriptFrontendController.php
typo3/sysext/frontend/Classes/Http/RequestHandler.php
typo3/sysext/frontend/Classes/Page/PageGenerator.php