[TASK] Remove useless count function calls in stdWrap

Remove two count calls in the often called stdWrap function
to increase the performance. Furthermore remove the
is_callable calls, because the hook interface take care
that the methods exist and are callable.

Resolves: #55372
Releases: 6.2
Change-Id: Ifc8f831a7b101c5c56f717c23024fae7b71b71a9
Reviewed-on: https://review.typo3.org/27078
Reviewed-by: Markus Klein
Tested-by: Markus Klein
Reviewed-by: Michiel Roos
Tested-by: Michiel Roos
Reviewed-by: Xavier Perseguers
Reviewed-by: Benjamin Mack
Tested-by: Benjamin Mack
[BUGFIX] Tame PackageStates.php in functional tests

Functional test bootstrap creates a full new instance
within typo3temp together with an own database. Goal is
a controlled environment without dependencies to the
parent instance.

The patch introduces separation of PackageStates.php. The file
is now compiled based on a static list of active core extensions
and optional additional extensions for specific functional tests.

Change-Id: I39e37a16b5cef5b6b1dab2ce3c4e8efc42cecbe7
Resolves: #55409
Releases: 6.2
Reviewed-on: https://review.typo3.org/27108
Reviewed-by: Thomas Maroschik
Reviewed-by: Wouter Wolters
Tested-by: Wouter Wolters
Reviewed-by: Christian Kuhn
Tested-by: Christian Kuhn
[BUGFIX] Display detected fatal in extension check

In the installer fatals can happen during updates of
very outdated extensions. Many updates can lead to a
redirect to the extension check where the user gets
displayed a message that a fatal has been detected.
But the detected fatal error itself is not displayed.

This patch passes the error as url parameter to the
extension check and displays it there.

Fixes: #54943
Releases: 6.2
Change-Id: I111df5d5411015b21c4b2b5e9be3b83b311c8bc5
Reviewed-on: https://review.typo3.org/26781
Reviewed-by: Helmut Hummel
Tested-by: Helmut Hummel
Reviewed-by: Thomas Maroschik
Reviewed-by: Wouter Wolters
Reviewed-by: Stefan Neufeind
Reviewed-by: Markus Klein
Reviewed-by: Anja Leichsenring
Tested-by: Anja Leichsenring
Tested-by: Wouter Wolters
Reviewed-by: Christian Kuhn
Tested-by: Christian Kuhn
[BUGFIX] ClickMenu does not show destination-foldername

Change-Id: I623d243ea504b0e646bd969e55ed7686ad3e9caf
Releases: 6.2, 6.1, 6.0
Resolves: #55407
Reviewed-on: https://review.typo3.org/27106
Reviewed-by: Wouter Wolters
Tested-by: Wouter Wolters
Reviewed-by: Christian Kuhn
Tested-by: Christian Kuhn
[BUGFIX] Set missing markers to empty string

Change-Id: I3892f88bdd094b390a22fe94d9b089bd9b8aef71
Resolves: #54112
Releases: 6.2, 6.1, 6.0
Reviewed-on: https://review.typo3.org/27102
Reviewed-by: Stefan Neufeind
Tested-by: Stefan Neufeind
Reviewed-by: Xavier Perseguers
Reviewed-by: Wouter Wolters
Reviewed-by: Christian Kuhn
Tested-by: Christian Kuhn
[TASK] Increase title column width in Web List module

Each database table has configured title column through
TCA configuration. This values are used by List Module
to render first (title) column on records list table.

Long values are truncated to some predefined number of
characters but since we now use larger font size (12px
instead of 11px), long titles can break to two lines due
to a fixed 300px column size.

This change increases title column width to 350px to
cope with the increased font size.

Resolves: #55406
Releases: 6.2
Change-Id: Ib8277a88bd831a0f0efea40d9500df7df06dc40e
Reviewed-on: https://review.typo3.org/27107
Reviewed-by: Ernesto Baschny
Tested-by: Ernesto Baschny
Reviewed-by: Christian Kuhn
Tested-by: Christian Kuhn
[BUGFIX] TSFE->altPageTitle can not be set in extensions

It is not possible to set $GLOBALS['TSFE']->altPageTitle
in USER_INT extensions anymore to modify the page title.

This has been possible before in the 4.x branches.

Fix this by implementing the title generation like all
other header data.

Resolves: #54467
Releases: 6.2, 6.1
Change-Id: I3d5be34b95cb295b92732d2f2f9bd1f123812365
Reviewed-on: https://review.typo3.org/26785
Reviewed-by: Stefan Neufeind
Reviewed-by: Alexander Opitz
Tested-by: Alexander Opitz
Reviewed-by: Xavier Perseguers
Reviewed-by: Bill Dagou
Reviewed-by: Wouter Wolters
Tested-by: Wouter Wolters
[BUGFIX] Installer: Show correct value for boolean options

Resolves: #53963
Releases: 6.2
Change-Id: I0dd51f2d256c153d6b6a1e247d86c69c5cfd7a7b
Reviewed-on: https://review.typo3.org/25681
Reviewed-by: Wouter Wolters
Tested-by: Wouter Wolters
Reviewed-by: Anja Leichsenring
Tested-by: Anja Leichsenring
[TASK] Wrong phpdoc in TableGarbageCollectionTask

The phpdoc notation of TableGarbageCollectionTask has some
pre namespaces config example.

This patch changes the phpdoc notiation.

Change-Id: Iaa0a70635893091c0ba99ce17404194c47e9a16c
Resolves: #54529
Releases: 6.2
Reviewed-on: https://review.typo3.org/26507
Reviewed-by: Christian Kuhn
Tested-by: Christian Kuhn
[BUGFIX] Update enableDeprecationLog default value and help text

TYPO3's deprecation_log is disabled by default. The Install Tool
shows an incorrect help text for the configuration
$GLOBALS['TYPO3_CONF_VARS']['SYS']['enableDeprecationLog'], claiming
that the default value is "file". In addition, enableDeprecationLog
is set to "file", which should be empty.

The patch removes the value of enableDeprecationLog and removes the
statement about the default value: other values in this area do not
state the default value either and since TYPO3 CMS 6.2 LTS, the
default value depends on the Application Context.

Resolves: #53653
Releases: 6.2
Change-Id: I2061a66b03e1c194f86d346e4183e95d3e959922
Reviewed-on: https://review.typo3.org/25417
Reviewed-by: Philipp Gampe
Tested-by: Philipp Gampe
Reviewed-by: Christian Kuhn
Tested-by: Christian Kuhn
[BUGFIX] Wrong typehint in TypoScriptFrontendController

The variable $pageCache in TypoScriptFrontendController misses "Core" in
the namespace.

Change-Id: I5f9ee3bf36951194c74627e4e2bc9d17f5c639e5
Fixes: #55448
Reviewed-on: https://review.typo3.org/27141
Reviewed-by: Wouter Wolters
Tested-by: Wouter Wolters
[BUGFIX] No double slash during folder canonicalization

The canonicalizeAndCheckFolderIdentifier does now check if the given
folder path is just a simple slash (/) and return it before really
canonicalizing the identifier.

This prevents the method returning a double slash (//) which will result
in an error in the isWithin() checkin the local driver.

Resolves: #55420
Releases: 6.2
Change-Id: Ibe189180a459377d042731931066a410e1e5ac51
Reviewed-on: https://review.typo3.org/27122
Reviewed-by: Frans Saris
Tested-by: Frans Saris
[TASK] Unify NULL default value handling

If a field is configured to allow NULL values ("eval" is set to "null")
and the default value in the TCA is explicitly set to NULL the value
will not be converted to a string.

Additionally the mode setting "useOrOverridePlaceholder" will not have
any influence any more on the default value when creating new records.

Resolves: #54412
Releases: 6.2
Change-Id: Ica43a1af33e6f86dd042b66781acc0e9cd904cf9
[TASK] Use FAL functions for image rendering

Instead of relying on the backward compatiblity layer of the
FrontendContentAdapterService when rendering images with
css_styled_content the render_textpic method is modified so that it
is also be possible to use FAL functions and properties for image
rendering.

The captionsSplit / imageTextSplit constants are removed because
every image has its own properties for that with FAL and they are
not needed any more.

The globalCaption rendering was removed because the captions are now
always attached to a single image.

The longdescURL handling was also removed because the files do not
have this property at the moment and the longdescURL field for
tt_content records is also not visible in the Backend.

Resolves: #53764
Releases: 6.2
Change-Id: I1d9c8ad1d7a498816e724960613818a05d587d4f
[FEATURE] Custom active tab in RTE element browser

Introduce a flag that prevents the element browser of rtehtmlarea
from overwriting the active tab that was set by a hook object.

Resolves: #49036
Releases: 6.2
Change-Id: Iebfda39714caa98c0d2023992bbf63a2f5b9b01a
[FEATURE] Allow escaping of dots in TypoScript key

This patch allows the use of backslashes to escape
dots in TypoScript keys, for example:

my\.escaped\.key = test

will result in a single key "my.escaped.key" with the
value "test".

Resolves: #29461
Releases: 6.2
Change-Id: Idcaae75d9a8800134f4a82e0740ddabe35b3df89
[BUGFIX] Correct order of key / field deletion

Prevent a SQL error when deleting a key and the field belonging
to the key in the install tool at the same time.

Therefore the order for deleting keys and fields is changed from
field first and key second to key first and field second.

Resolves: #50450
Releases: 6.2
Change-Id: I30aff6ea6c2bf01dec6197eec8fd3aa7306cfcbb
[BUGFIX] Prevent exclude field mixup in FromEngine

Use a local variable for storing the excluded fields in the
FormEngine to prevent the configuration from being overwritten
by the inline form element renderer.

Fixes: #47359
Releases: 6.2, 6.1, 6.0, 4.7, 4.5
Change-Id: I5a7a2de16d767f854b4d3f89d599deec28266092
[BUGFIX] URL encode special characters in getPublicUrl()

The FAL method getPublicUrl() in the ResourceStorage should return a
valid URL. To archive this special characters and spaces are URL
encoded in the LocalDriver.

Resolves: #52806
Releases: 6.2
Change-Id: If1f3b6513b6feb0f24cd91be6998a686b54c467e
[BUGFIX] Correct file language overlay for pages

This patch corrects the fields the FILES content object is using for
doing the language overlay for file references for fields in the pages
table.

Instead of the _LOCALIZED_UID that is only available for other record
types the _PAGES_OVERLAY_UID field is now used to check if there
is a translated version available.

Resolves: #47869
Releases: 6.2, 6.1, 6.0
Change-Id: I2465a9e3ccd49223cc44885ffba8484788e1b669