[BUGFIX] Fix template rootline for translated pages

The TypoScript template rootline in the Frontend will not be
changed any more if a different sys_language_uid is used.

The data of the current rootLine will be overwritten with the
translated rootLine data.

Resolves: #48300
Releases: 6.2, 6.1
Change-Id: I38bd4a6f3d3c2f15712003b1d1a1334284ebe9b0
Reviewed-on: https://review.typo3.org/21174
Reviewed-by: Wouter Wolters
Tested-by: Wouter Wolters
[TASK] Move express-install to contrib (flowplayer)

To resolve /t3lib few more files should be moved:
Moves flowplayer styles for express-install to contrib.

Change-Id: I8d987774c9ff2c9ab13f86ab6086c1d7fb608afa
Resolves: #49151
Releases: 6.2
Reviewed-on: https://review.typo3.org/21450
Reviewed-by: Wouter Wolters
Tested-by: Wouter Wolters
Reviewed-by: Markus Klein
Tested-by: Markus Klein
[BUGFIX] Illegal string offset 'translations' in DatabaseRecordList

The return value of TranslationConfigurationProvider->translationInfo
normally is an array, but it is a string in case of an error.
Move the line below the is_array() check, because it is only needed
inside.

Fixes: #47103
Releases: 6.2, 6.1, 6.0, 4.7, 4.5
Change-Id: Ia781eae987d9295bc2b299f83c087669c96dfd00
Reviewed-on: https://review.typo3.org/19779
Reviewed-by: Dmitry Dulepov
Reviewed-by: Alexander Opitz
Reviewed-by: Heiko Kromm
Tested-by: Heiko Kromm
Reviewed-by: Markus Klein
Tested-by: Markus Klein
[BUGFIX] Allow non-Admins to delete Records finally

This patch adds the posibility for non Admins to delete
records finally in the recycler.

Change-Id: I1fda11d621403758f4d78b7fa8f730d7b47d79a7
Fixes: #34156
Releases: 6.2, 6.1, 6.0, 4.7, 4.5
Reviewed-on: https://review.typo3.org/10480
Reviewed-by: Wouter Wolters
Tested-by: Wouter Wolters
[TASK] Move video-js to contrib

To resolve /t3lib few more files should be moved:
Moves video-js styles controls to contrib.

Change-Id: I648d3bdd17ed0414e6ef1041f3630c343c73747d
Resolves: #49152
Releases: 6.2
Reviewed-on: https://review.typo3.org/21451
Reviewed-by: Wouter Wolters
Tested-by: Wouter Wolters
Reviewed-by: Christian Kuhn
Tested-by: Christian Kuhn
[FEATURE] Allow custom record list in element browser

Introduces a class variable and a setter for a custom record list
instance in the element browser that can be used to override the
default element browser recordlist.

Resolves: #49037
Releases: 6.2
Change-Id: I41fd3a33f70e72aedef9362ee6bf67de9dcde8ac
Reviewed-on: https://review.typo3.org/21347
Reviewed-by: Wouter Wolters
Tested-by: Wouter Wolters
Reviewed-by: Philipp Gampe
Reviewed-by: Georg Ringer
Tested-by: Georg Ringer
[BUGFIX] Fix reverse order handling of MediaProvider

Fixing the variable used to test for valid providers in reverse order.

Resolves: #49136
Releases: 6.2, 6.1, 6.0
Change-Id: Ia80366150b853138fc41c09e59df993e1540b230
Reviewed-on: https://review.typo3.org/21471
Reviewed-by: Markus Klein
Tested-by: Markus Klein
[TASK] Add labels to form fields of admin panel

Labels make it much easier to click check boxes and to
reach fields.

Change-Id: Ib9c42f4859a4fc4e30fc7f03dd525795d0824449
Resolves: #49073
Reviewed-on: https://review.typo3.org/21372
Reviewed-by: Georg Ringer
Tested-by: Georg Ringer
[TASK] Remove unused icons from /gfx

Folder /gfx holds image that are used over the backend.
EXT: t3skin brings an override declaration and own icons.

Over the time lots of icons were added and overworked but
no icons were removed - although many should be erased.

Removes unused icons from the main /gfx folder.

Resolves: #49112
Releases: 6.2
Change-Id: Id5e00dd3daec3129caae58ed1bccfd51fb9f610b
Reviewed-on: https://review.typo3.org/21404
Reviewed-by: Georg Ringer
Tested-by: Georg Ringer
[TASK] Cleanup ChangeLog

Remove duplicate lines from ChangeLog
Follow-up to commit:db9efd32b4dfad2952f2725b53fb5e4522740b74

Change-Id: I62b32f9b0b37c3977bc61b2874e37cde289846df
Resolves: #49110
Releases: 6.2, 6.1, 6.0
Reviewed-on: https://review.typo3.org/21423
Reviewed-by: Stefan Neufeind
Tested-by: Stefan Neufeind
Reviewed-by: Wouter Wolters
Tested-by: Wouter Wolters
[BUGFIX] Nested FLUIDTEMPLATE doesn't work anymore

It's impossible since version 6.0 to render a
FLUIDTEMPLATE content object inside a
FLUIDTEMPLATE, because the internal fluid view
instance of the parent FLUIDTEMPLATE will be
overridden by the children FLUIDTEMPLATE.

Fixes: #48021
Releases: 6.2, 6.1, 6.0
Change-Id: I776a3b0a388bb47d2995041679e39ec7442459c2
Reviewed-on: https://review.typo3.org/20585
Reviewed-by: Stefan Neufeind
Tested-by: Stefan Neufeind
[BUGFIX] Use correct path in belog modules

Belog module links to history view but path is wrong in
the info module.

Change-Id: I3e45218b2bd8b7d69d75459f41c37512de3dd23f
Releases: 6.2, 6.1, 6.0
Resolves: #49091
Reviewed-on: https://review.typo3.org/21480
Reviewed-by: Stefan Neufeind
Tested-by: Stefan Neufeind
[BUGFIX] Raw search can't search inside the pages table

It's impossible to search the pages table, because a field
definition is wrongly named in the pages TCA.

Fixes: #49242
Releases: 6.2, 6.1, 6.0
Change-Id: I0d1b9eeb4ffdfbff456dfc6249cb23853cb9a357
Reviewed-on: https://review.typo3.org/21502
Reviewed-by: Markus Klein
Tested-by: Markus Klein
[FEATURE] Add autofocus attribute to BE login

Adding the HTML5 autofocus attribute to the
backend login box's username field.

Resolves: #49228
Releases: 6.2
Change-Id: I5a00d5ec260ade81fb83553a50358cddf95eaebb
Reviewed-on: https://review.typo3.org/21500
Reviewed-by: Eric Chavaillaz
Tested-by: Eric Chavaillaz
Reviewed-by: Philipp Gampe
Tested-by: Philipp Gampe
[!!!][TASK] Rewrite install tool

Main features:
* The god class "Installer" is gone and split into two major parts.
A step controller handling major upgrade and install tasks, and a
tool controller handling the known install tool actions.

* The step controller is designed to be always called prior to the
tool controller, if a step needs execution, it comes up, otherwise
the tool controller will be executed.

* The entry point typo3/install/index.php is gone and substituted
by typo3/sysext/install/Start/Install.php. The file contains a
lengthy comment to document the main request flow and used GET/POST
parameters.

* Most parts of the install tool do not bootstrap the whole system
anymore, in general only the base bootstrap, dbal (if loaded),
extbase and fluid ext_localconf.php are loaded. This makes sure
the install tool can not fatal if some extensions ext_localconf
is broken. The whole install tool runs without any caching, so a fatal
in some cache file can not kill the install tool execution.

* Installing TYPO3 CMS on a dbal enabled system is now handled in
the step installer directly to make the according code easier to
understand.

* Rendering is done with a simplified fluid standalone view.

* All install tool forms are CSRF protected.

* A new and fully unit tested class structure is introduced, designed
to take care of the basic file and folder structure of the instance.
It is used during installation to create the needed structure and
can be called in the install tool to compare and fix the current
instance structure with the expected structure. In effect, the
"dummy" package is obsolete. An instance can be created by just
linking index.php, typo3_src/ and typo3/ within the document root,
the installer takes care of creating everything else.

* The installation procedure is released from the package handling.
Packages will be handled by the extension manager after initial
installation with another patch.

Loose ends:
* The whole package handling needs to be implemented in the
extension manager.

* Not all upgrade wizards work, this code area needs some love.

* A 'core' auto updater could be implemented now. A GSoC project
is currently running to realize this.

* The SQL schema migration API is a mess and should be refactored.
For now, another helper class is introduced to encapsulate some
of the nasty details.

* An auto configuration and configuration suggestion system is
planned and needs to be done. It should suggest best configuration
options in the install tool, and should auto configure the system
during installation in the last install step.

* If the backend or frontend fatals due to some extension that
triggers a fatal in ext_localconf or ext_tables (for example
due to a require() of a no longer existing file), a small helper
action in the install tool could find those extensions and suggest
to unload them.

Change-Id: Ice3248caa903449ad6a83ea4f234c7bd125bdb66
Resolves: #49162
Releases: 6.2
Reviewed-on: https://review.typo3.org/21468
Reviewed-by: Anja Leichsenring
Tested-by: Anja Leichsenring
Tested-by: Alexander Opitz
Reviewed-by: Stefan Froemken
Tested-by: Stefan Froemken
Reviewed-by: Christian Kuhn
Tested-by: Christian Kuhn
[TASK] Remove duplicate vera.ttf from ext:core

vera.ttf is a font only used in the install tool, it was duplicated
to ext:install with the rewrite patch, but forgotten to be removed
from ext:core along the way. The file is removed from ext:core now
to finish the process.

Change-Id: Ibeb8a459655d51b0d5fd5269060c0a36b47b85fc
Resolves: #49261
Related: #49162
Releases: 6.2
Reviewed-on: https://review.typo3.org/21512
Reviewed-by: Christian Kuhn
Tested-by: Christian Kuhn
[BUGFIX] Filelist: Only show paste buttons if clipObj is set

During introduction of the paste buttons for empty folders, I assumed
that the clipboard object is always set.
This might not be the case, e.g. in EXT:sphinx 4.0.0.

Wrap the paste button code with a check if the clibObj is set.

We can not set the clibObj here, because it depends on variables of the
calling class.

Resolves: #48603
Releases: 6.2, 6.1, 6.0
Change-Id: I2c7c322c9cb994cfdfa1511c96e8c7da143dc77a
Reviewed-on: https://review.typo3.org/21131
Reviewed-by: Alexander Opitz
Tested-by: Alexander Opitz
Reviewed-by: Christian Kuhn
Tested-by: Christian Kuhn
[TASK] Install tool: Code optimization in update wizard action

An if with only a 'throw Exception' call in it breaks code execution
and acts as a guard clause. The code below does not need to be in
an else case.

Change-Id: Ib24ed4bee06763fb46145b815a0b6f3fdf7bafa6
Resolves: #49263
Related: #49162
Releases: 6.2
Reviewed-on: https://review.typo3.org/21515
Reviewed-by: Christian Kuhn
Tested-by: Christian Kuhn
[BUGFIX] Update Wizard user input not taken into account

After reworking the install tool, the form element identifier was broken.

Resolves: #49258
Releases: 6.2
Change-Id: Ia9bae8c23345502ddbd4dd398f523af07dbfa5e1
Reviewed-on: https://review.typo3.org/21510
Reviewed-by: Christian Kuhn
Tested-by: Christian Kuhn
[BUGFIX] Use userInput instead of own broken method

The user data from form post submit is broken after install tool
rewrite. Instead of using own method to gather data changed to
the userInput variable that is set by the calling action.

Resolves: #49260
Related: #49162
Related: #49258
Releases: 6.2
Change-Id: I2ce0b5e4bfcb0ef013039297a9186f0f59413b31
Reviewed-on: https://review.typo3.org/21511
Reviewed-by: Christian Kuhn
Tested-by: Christian Kuhn