[BUGFIX] Fix warning during extension installation

During unpacking of an extension in the installation
process it can happen that the extension data
contains folders in the file list.

These folders need to be removed from the list
in order to avoid warnings when trying to write
directories as files.

Also remove duplicates from folders before
creating them.

Besides fix some (non related) comparisons to
strict comparisons on the go.

Resolves: #57261
Releases: 6.2
Change-Id: Ib6821a0a438ebc9441b8fa2ee3fbd7869f23ec7f
Reviewed-on: https://review.typo3.org/28731
Reviewed-by: Philipp Gampe
Tested-by: Philipp Gampe
Reviewed-by: Ernesto Baschny
Tested-by: Ernesto Baschny
[CLEANUP] Extbase persistence classes

The classes contain wrong type hints and miss a lot of
checks whether the correct object is present.

Resolves: #57031
Releases: 6.2
Change-Id: I3d03c838b05529daf0da444119dd7f8dba6d5b8a
Reviewed-on: https://review.typo3.org/28489
Reviewed-by: Felix Oertel
Tested-by: Felix Oertel
Reviewed-by: Markus Klein
Tested-by: Markus Klein
[RELEASE] Release of TYPO3 6.2.0rc2

Change-Id: If247d1f182ecc1de823852bda435efd7e2e420f2
Reviewed-on: https://review.typo3.org/28736
Reviewed-by: TYPO3 Release Team
Tested-by: TYPO3 Release Team
[TASK] Set TYPO3 version to 6.2-dev

Change-Id: I581ca28ee926ad1891b33baa1c8d8f0e9f9df5a9
Reviewed-on: https://review.typo3.org/28737
Reviewed-by: TYPO3 Release Team
Tested-by: TYPO3 Release Team
[BUGFIX] ExtJS / normalize table > th

Browsers center text in <th> but the header text should
be aligned to the left. This issue arose when ExtJS
normalize reset was removed. Simple explicit definition.

Resolves: #57211
Releases: 6.2
Change-Id: Ib235d9e9e2beabac01a62b10cedea08faacbd896
Reviewed-on: https://review.typo3.org/28679
Reviewed-by: Ernesto Baschny
Tested-by: Ernesto Baschny
Reviewed-by: Wouter Wolters
Tested-by: Wouter Wolters
[BUGFIX] getFolderStatus ajax also being called in Step Installer

Resolves: #57262
Releases: 6.2
Change-Id: I190420ef696de819ebf3f06033ba7e97c639a92c
Reviewed-on: https://review.typo3.org/28739
Reviewed-by: Alexander Opitz
Tested-by: Alexander Opitz
Reviewed-by: Christian Kuhn
Tested-by: Christian Kuhn
[BUGFIX] Fix problem with cache being cleared multiple time

When pages or records in general are changed using
the DataHandler, the pageCache is cleared for
each page multiple times. To fix this, the DataHandler
will collect which pages need clearing, and wait with
the actual clearing until all operations in
cmdMap or dataMap has been processed.
This way the cache is only cleared once for each page.

Resolves: #52235
Releases: 6.2
Change-Id: If1aa389991b801413eafa38d7d140f932bb321f2
Reviewed-on: https://review.typo3.org/25423
Reviewed-by: Markus Klein
Tested-by: Markus Klein
Reviewed-by: Jigal van Hemert
Reviewed-by: Jan-Erik Revsbech
Tested-by: Jan-Erik Revsbech
Tested-by: Philipp Gampe
Reviewed-by: Benjamin Mack
Tested-by: Benjamin Mack
[BUGFIX] Typo3DbQueryParser must handle LowerCase

Resolves: #57263
Releases: 6.2
Change-Id: I89b5051a5fe1d6fc908428019115fcd4bc0d2b38
Reviewed-on: https://review.typo3.org/28735
Reviewed-by: Felix Oertel
Tested-by: Felix Oertel
Reviewed-by: Markus Klein
Tested-by: Markus Klein
[BUGFIX] Fix Query unit test and two typehints

Follows #57263

Fixes a change of interface in the unit test for Query.
Moreover two more places miss the new interface typehint.

Resolves: #57286
Releases: 6.2
Change-Id: I528656055782e22989b8fd7cc8a652d8de829663
Reviewed-on: https://review.typo3.org/28759
Reviewed-by: Felix Oertel
Tested-by: Felix Oertel
Reviewed-by: Markus Klein
Tested-by: Markus Klein
[TASK] Add first level cache for the query cache

The Extbase query cache stresses the database by querying
the same cache identifier over and over again. This for example
doubles the amount of fired database queries for fetching related
objects at the moment.

Introduce a first level cache saving the cache entries during
runtime.

Resolves: #57275
Releases: 6.2
Change-Id: I964db7c9ab8b61a3d8ac6534a35dc65240398aa7
Reviewed-on: https://review.typo3.org/28744
Reviewed-by: Markus Klein
Tested-by: Markus Klein
Reviewed-by: Philipp Gampe
Reviewed-by: Helmut Hummel
Tested-by: Helmut Hummel
[TASK] Show by default only 1 file upload field in elementbrowser

Since the input type=file now supports multiple file selection
and this is suppoterd by all modern browsers.
So showing only 1 filepicker by default is enough.

For users with older browser they can use the already existing
options.folderTree.uploadFieldsInLinkBrowser tsconfig to show
multiple fields.

This patch changes the hardcoded default value to 1.

Resolves: #57170
Releases: 6.2
Change-Id: Ia2dfcc3ae81dff66ba4c389a4b99b819186f63c0
Reviewed-on: https://review.typo3.org/28699
Reviewed-by: Philipp Gampe
Reviewed-by: Sebastian Fischer
Reviewed-by: Helmut Hummel
Tested-by: Helmut Hummel
[BUGFIX] Extbase: Methods are inherited twice

Change #57031 introduced two methods in DomainObjectInterface,
which are already present in ObjectMonitoringInterface.

Undo that change.

Resolves: #57271
Releases: 6.2
Change-Id: I95852d8221a1b54c4d6a71c508666e0fb1080223
Reviewed-on: https://review.typo3.org/28745
Reviewed-by: Xavier Perseguers
Reviewed-by: Helmut Hummel
Tested-by: Markus Klein
Reviewed-by: Markus Klein
[BUGFIX] Wrong SignalSlot dispatch calls in ResourceStorage

The wrong classname is used and for emitPreFolderCopySignal(),
emitPostFolderCopySignal(), emitPreFolderMoveSignal() and
emitPostFolderMoveSignal() the $newName parameter is not
passed through

Resolves: #57273
Releases: 6.2
Change-Id: Iaf82820abe29b97da93f9583435b9264671e3a38
Reviewed-on: https://review.typo3.org/28743
Reviewed-by: Xavier Perseguers
Reviewed-by: Markus Klein
Reviewed-by: Steffen Ritter
Reviewed-by: Ernesto Baschny
Tested-by: Xavier Perseguers
Reviewed-by: Frans Saris
Tested-by: Frans Saris
[BUGFIX] Clean MP parameter for rootline cache identifier

Any commas in the mount point parameter are replaced with underscores
to prevent caching errors in the RootlineUtility.

Resolves: #57073
Releases: 6.2
Change-Id: If1e135d0abbc08ebc11954d17f57ea037983ba10
Reviewed-on: https://review.typo3.org/28521
Reviewed-by: Markus Klein
Tested-by: Markus Klein
Reviewed-by: Alexander Opitz
Tested-by: Alexander Opitz
Reviewed-by: Jost Baron
Tested-by: Jost Baron
Reviewed-by: Jigal van Hemert
Tested-by: Jigal van Hemert
[TASK] Remove deprecated methods/properties in Extbase

Releases: 6.2
Resolves: #57242
Resolves: #44327
Change-Id: I0cfd55e8bbaab690cc6b22b30e18972b0e8747c0
Reviewed-on: https://review.typo3.org/28716
Reviewed-by: Marc Bastian Heinrichs
Tested-by: Marc Bastian Heinrichs
Reviewed-by: Stefan Neufeind
Reviewed-by: Oliver Klee
Reviewed-by: Markus Klein
Tested-by: Markus Klein
[TASK] Follow-up: Typo3DbQueryParser must handle LowerCase

Add a test for preparse query hash.

Resolves: #57263
Releases: 6.2
Change-Id: Ia524b65f5ef559822c62df1f53c0e78c4750f01e
Reviewed-on: https://review.typo3.org/28764
Reviewed-by: Markus Klein
Tested-by: Markus Klein
[TASK] Refactor element dependency resolving

Dependency element resolving of nested data structures currently
is used in CommandMap only. However the logic can be used for
other tasks as well, like e.g. showing nested structures in the
workspaces module. Callback methods are extracted to the new
ElementEntityProcessor to reduce further code duplication.

Resolves: #57231
Releases: 6.2
Change-Id: If588e2c644fb897f0ac5f7aaf4f341ce8ac5c232
Reviewed-on: https://review.typo3.org/28700
Reviewed-by: Oliver Hader
Tested-by: Oliver Hader
[TASK] Visualize nested data structures in workspace module

The current workspace module only has two levels (page and the
accordant records). Nested record sets like tt_content ->
sys_file_reference (any "text with image" content element) are
not recognized as dependent and need to be published separately.

The GridDataService is extended to determine the the accordant
nested record sets and provides additional data for parent and
child scenarios. The ExtJS view components are extended to take
care of nested record sets and to handle expand and collapse
events on these kind of record collections.

Resolves: #55349
Releases: 6.2
Change-Id: I93ca187c3997bf7f4cdadefd741be2541aef5ae4
Reviewed-on: https://review.typo3.org/28701
Reviewed-by: Oliver Hader
Tested-by: Oliver Hader
[TASK] Use alternative selector for many workspaces

The toolbar of the workspace module visualizes each workspace
in a separate tab. On having many workspaces, the toolbar is
extended to multiple lines which actually reduces the available
viewport of the grid panel.

This change introduces a modified TabPanel that shrinks if the
available width is undershot. In this case an additional menu
is rendered to the right side of the panel to visualize the
remaining items in a vertical list.

Resolves: #49689
Releases: 6.2
Change-Id: I85c8b8134dfe27a4dc32c5d70a158cca41763c41
Reviewed-on: https://review.typo3.org/21920
Reviewed-by: Oliver Hader
Tested-by: Oliver Hader
[BUGFIX] Wrong whitespace handling in RTE-enabled fields upgrade wizard

The upgrade wizards searches for all filepaths in the RTE-enabled fields
as these are found in sys_refindex.ref_string. But in the RTE-enabled
fields spaces are replaced by %20 and in sys_refindex.ref_string not.

This patch replaces whitespaces with %20 in the regularExpression
used the find the occurrences of the filepath.

Resolves: #57143
Releases: 6.2
Change-Id: I6631b476defe7e3faa78914338fce70372ad1fb5
Reviewed-on: https://review.typo3.org/28600
Reviewed-by: Markus Klein
Tested-by: Markus Klein