[BUGFIX] SoftReferenceIndex typolink lacks support for title attributes

The SoftReferenceIndex parses and rebuilds typolink tags, but the
support for the title attributes was missing.
This leads to lost title attributes on typolinks in exports from impexp.

Resolves: #56580
Releases: 6.2, 6.1, 6.0, 4.5
Change-Id: I9bf5c02b79ae4c9024322f0da99dcca37b678daa
Reviewed-on: https://review.typo3.org/28083
Reviewed-by: Wouter Wolters
Tested-by: Wouter Wolters
Reviewed-by: Markus Klein
Tested-by: Markus Klein
[CLEANUP] Improve code style for FormEngine::getTSCpid()

The PHPDoc is fixed. The method returns an array and not an integer.

Additionally the class variable that is used in this method for
storing the cached values is added as a property.

Releases: 6.2
Resolves: #56658
Change-Id: I6010cf97781001cd760c891da3df3bfb7a605b73
Reviewed-on: https://review.typo3.org/28167
Reviewed-by: Tymoteusz Motylewski
Tested-by: Tymoteusz Motylewski
Reviewed-by: Christian Kuhn
Tested-by: Christian Kuhn
[TASK] Deprecate usage of $GLOBALS['typo3CacheManager']

* Replace all instances of $GLOBALS['typo3CacheManager']
  in the core with a makeInstance call.
* Adapt the tests.
* Make use of dependency injection where possible.
* Add compatibility layer with deprecation message
  for $GLOBALS['typo3CacheManager'] and $GLOBALS['typo3CacheFactory']

Resolves: #56597
Releases: 6.2
Change-Id: Idb035723626b24cfd768204bf24987171f5b0feb
Reviewed-on: https://review.typo3.org/28101
Reviewed-by: Christian Kuhn
Tested-by: Christian Kuhn
Reviewed-by: Wouter Wolters
Tested-by: Wouter Wolters
[BUGFIX] Allow user update without password changes in sys_action

If you want to edit a user within the sys_action module, you have to
set a (new) password as otherwise the record won't be updated. This
patch allows an empty password field for updates while new users
still need a defined password.

Resolves: #25700
Releases: 6.2
Change-Id: I37c20a706b15ebce458033c4f5fe4016236ef1d8
Reviewed-on: https://review.typo3.org/27377
Reviewed-by: Wouter Wolters
Tested-by: Wouter Wolters
Reviewed-by: Christian Kuhn
Tested-by: Christian Kuhn
[BUGFIX] Fix Misleading CommandController naming for Language update

Due to CommandControllers' nature, an UpdateCommandController leads to the
execution of `cli_dispatch.phpsh extbase update:update`.

This patch fixes it to `cli_dispatch.phpsh extbase language:update`.

Also contains a minor change and adds a type-hint for IDE's.

Resolves: #54128
Releases: 6.2
Change-Id: I1b21b8f715bfd1928f1e857846c0542d90705b6f
Reviewed-on: https://review.typo3.org/24511
Reviewed-by: Christian Kuhn
Tested-by: Christian Kuhn
Reviewed-by: Wouter Wolters
Tested-by: Wouter Wolters
[TASK] Remove unused function BackendUtility::updatePagesTSconfig()

The function is not used in the core and marked as @internal since the
beginning of the time (revision 1). Therefore it is removed directly.

Resolves: #53471
Releases: 6.2
Change-Id: Ib74fa65b24caa9879b16921e13e3d0bed894b712
Reviewed-on: https://review.typo3.org/25228
Reviewed-by: Wouter Wolters
Tested-by: Wouter Wolters
Reviewed-by: Christian Kuhn
Tested-by: Christian Kuhn
[CLEANUP] Remove references to $GLOBALS['FILEMOUNTS']

Global filemounts are not supported with FAL anymore
as the implementation is done via file storages directly.
All references to the global FILEMOUNTS is removed as
it was an empty array since 6.0.

Next step (but not part of this patch) is to clean up the
functions in BasicFileUtility that make use of the filemounts.

Releases: 6.2
Resolves: #55547
Change-Id: I07e08afe54c174d1c3a67c41645819e5831fd1e3
Reviewed-on: https://review.typo3.org/27227
Reviewed-by: Christian Kuhn
Tested-by: Christian Kuhn
Reviewed-by: Wouter Wolters
Tested-by: Wouter Wolters
[TASK] Remove deprecated doDisplayTopFrameCM

Resolves: #56623
Releases: 6.2
Change-Id: Ib24adf0029f23053b1218340cb11b6390964fefd
Reviewed-on: https://review.typo3.org/28120
Reviewed-by: Christian Kuhn
Tested-by: Christian Kuhn
Reviewed-by: Anja Leichsenring
Tested-by: Anja Leichsenring
[BUGFIX] Temporary DB tree mount notice missing in ElementBrowser

If "Stop Page Tree" is set for a page, it is possible to set temporary
DB tree mounts in the element browser/link browser.
If such a tree mount is set, a notice is displayed right above the tree.

This notice is necessary to cancel this temporary mount.
Currently the ElementBrowser misses this notice when used
for e.g. header_link.

Change-Id: I942aad0e54d17ceb793008850f0563bb416503be
Fixes: #43885
Releases: 6.2, 6.1, 6.0
Reviewed-on: https://review.typo3.org/17101
Reviewed-by: Markus Klein
Tested-by: Markus Klein
Reviewed-by: Lorenz Ulrich
Tested-by: Lorenz Ulrich
Reviewed-by: Wouter Wolters
Reviewed-by: Christian Kuhn
Tested-by: Christian Kuhn
[BUGFIX] Extension upload as zip on Windows systems ignores directories

Using DIRECTORY_SEPARATOR on Windows environments is a "\" instead of
a "/". Fix this by replacing the constant with '/'.

Resolves: #53740
Resolves: #53346
Releases: 6.2
Change-Id: Ia745a17fd47c527b57e78babef76b67f30af0454
Reviewed-on: https://review.typo3.org/26911
Reviewed-by: Jigal van Hemert
Tested-by: Jigal van Hemert
Reviewed-by: Nicole Cordes
Tested-by: Nicole Cordes
[TASK] Use function for temp. page tree in BrowseLinks too

The new introduced function ElementBrowser::getTemporaryTreeMountCancelNotice()
shall also be used in its subclass to remove code duplication.

Resolves: #56666
Releases: 6.2
Change-Id: I0d7aca1c0695479f7ced9323098c0e7b04f1abda
Reviewed-on: https://review.typo3.org/28179
Reviewed-by: Markus Klein
Tested-by: Markus Klein
[BUGFIX] Make Import/Export work with Package Manager

When displaying the import/export backend module
there are warnings and an empty extension list,
because the extension Selector does not use the
API to fetch the extension list, but does a raw
$TYPO3_LOADED_EXT instead.

Resolves: #56670
Releases: 6.2
Change-Id: I851cc1f7e01acd9f743559a9400340364280ba7e
Reviewed-on: https://review.typo3.org/28183
Reviewed-by: Markus Klein
Tested-by: Markus Klein
Reviewed-by: Anja Leichsenring
Tested-by: Anja Leichsenring
[CLEANUP] Cleanup jumpToUrl() and unused JS in Backend

The jumpToUrl() is defined in every
second module as inline JS. As the
duplicated code is erroneous and
can be shimmed completely, the
function is added to every doc-template
code by default, but can be overriden and
removed completely - which is still the case
in some existing modules.

Additionally the variable "script_ended"
is not used at all anymore, and was removed
as well.

Releases: 6.2
Resolves: #56667
Change-Id: I716611bffce402c5f423c3d64c763d6675a79d14
Reviewed-on: https://review.typo3.org/28180
Reviewed-by: Markus Klein
Tested-by: Markus Klein
Reviewed-by: Anja Leichsenring
Tested-by: Anja Leichsenring
[TASK] Improve AbstractDataHandlerActionTestCase

Improvements for the AbstractDataHandlerActionTestCase to
get better functional test results in general and working
functional tests in impexp (e.g. for FlexForm XML):

* collect all fail messages before calling fail()
* check records for left rows that was not assigned in csv
* do strict compare if value is NULL
* compare XML, e.g. FlexForm

Resolves: #56241
Releases: 6.2
Change-Id: Ic21c27261cbe18dc5fd37c4869c10264880b731e
Reviewed-on: https://review.typo3.org/27816
Reviewed-by: Anja Leichsenring
Tested-by: Anja Leichsenring
Reviewed-by: Christian Kuhn
Tested-by: Christian Kuhn
[FEATURE] TypoScript property escapeJsValue

The stdWrap property escapeJsValue allows content to be
included in JavaScript strings.

Resolves: #56642
Documentation: #56665
Releases: 6.2
Change-Id: I43f59889caec1a89970b94c93c93894d589243c9
Reviewed-on: https://review.typo3.org/28177
Reviewed-by: Xavier Perseguers
Tested-by: Xavier Perseguers
Reviewed-by: Markus Klein
Reviewed-by: Wouter Wolters
Tested-by: Wouter Wolters
Reviewed-by: Jigal van Hemert
Tested-by: Jigal van Hemert
[BUGFIX] Install Tool does not save Extbase object cache Configuration

Change-Id: I1ee28a5af824b048863c61321a226bf7c9843f77
Resolves: #55556
Releases: 6.2
Reviewed-on: https://review.typo3.org/28175
Reviewed-by: Christian Kuhn
Tested-by: Christian Kuhn
Reviewed-by: Wouter Wolters
Tested-by: Wouter Wolters
[BUGFIX] Unnatural processing order in IRRE tests

The IRRE tests for creating and modifying records first process
offer, hotel then content which is the unnatural order compared
to the processing delivered by the FormEngine (t3lib_TCEforms).
To avoid incorrect testing behaviour and invalid testing
results, the order is changed to content, hotel and offer
(parent to child).

Resolves: #56374
Releases: 6.2
Change-Id: Ib14fc2d50b493e4be982faeba77401b320868639
Reviewed-on: https://review.typo3.org/27887
Reviewed-by: Wouter Wolters
Tested-by: Wouter Wolters
Reviewed-by: Jigal van Hemert
Tested-by: Jigal van Hemert
[TASK] Deprecate insertModuleFunction "$classPath" parameter

Deprecates the need to specify the $classPath when registering a submodule
with ExtensionManagementUtility::insertModuleFunction. Remove the
parameter's usage throughout the system extensions.

Also re-adds the removed include_once that were removed without proper
deprecation before (see #49992).

Resolves: #52594
Releases: 6.2
Change-Id: I090278b8e2e7a15e05b14dca757ae2b8ef1e5fb4
Reviewed-on: https://review.typo3.org/24462
Reviewed-by: Christian Kuhn
Tested-by: Christian Kuhn
Reviewed-by: Anja Leichsenring
Tested-by: Anja Leichsenring
[BUGFIX] Wrong file icon in info popup

In the info popup of a file/folder the wrong icon is shown.

This patch changes it so IconUtility::getSpriteIconForResource()
is used and moves the rendering of the header to the
DocumentTemplate.

Resolves: #56251
Releases: 6.2
Change-Id: I7fc40af85b8bc623112bcec29c2409221a937718
Reviewed-on: https://review.typo3.org/27819
Reviewed-by: Wouter Wolters
Tested-by: Wouter Wolters
Reviewed-by: Christian Kuhn
Tested-by: Christian Kuhn
[BUGFIX] ResourceStorage::SIGNAL_PreFileAdd should be triggered earlier

The PreFileAdd signal should be triggered before the file exist check.
So the name and/or content can be manipulated before the target filename
is checked.

Change-Id: I0bbe32a4efa395a99278c480210310bd7466f259
Fixes: #56394
Releases: 6.2
Reviewed-on: https://review.typo3.org/28099
Reviewed-by: Christian Kuhn
Tested-by: Christian Kuhn
Reviewed-by: Anja Leichsenring
Tested-by: Anja Leichsenring