[BUGFIX] Hardcoded "admin" user in Installer template

The hardcoded username "admin" is removed from the HTML template
since the username can now be freely chosen.

Resolves: #53905
Releases: 6.2
Change-Id: I1c2846e60ee57f5e220405a9217fc1023d4d8bee
Reviewed-on: https://review.typo3.org/25668
Reviewed-by: Stefan Neufeind
Tested-by: Stefan Neufeind
[BUGFIX] Page module: Allow to paste in empty columns

Since quite a long time it was not possible to paste a content
element into an empty column of the page module. This patch
introduces an icon in the top right corner of each column if
a tt_content element is on the clipboard (Default pad). When
the icon gets clicked the content elements from the clipboard
get moved/copied into the selected column/language.

Resolves: #15080
Releases: 6.2, 6.1
Change-Id: If52905446eb11c268d0fee83f150efae0945fa29
Reviewed-on: https://review.typo3.org/25532
Reviewed-by: Markus Klein
Tested-by: Markus Klein
Reviewed-by: Stefan Neufeind
Tested-by: Stefan Neufeind
[CLEANUP] Improve code style of RelationHandler class

* add missing class properties, that are used in the code
* fix invalid PHPDoc variable types
* remove unused variables
* fix or remove invalid return values
* fix invalid variable types
* make sure unused variables are initialized

Resolves: #53718
Releases: 6.2
Change-Id: I90c1b73d0a4a7bb4666679e772805460786c805d
Reviewed-on: https://review.typo3.org/25479
Reviewed-by: Markus Klein
Tested-by: Markus Klein
Reviewed-by: Wouter Wolters
Reviewed-by: Stefan Neufeind
Tested-by: Stefan Neufeind
[BUGFIX] Fix ordering of stages in action dropdown

If multiple stages exist and a user is member of only a few stages,
then in many cases the ordering of the stages is mixed up.

Change-Id: Ifab7e0afd412f63de574ef262ad4b982cfe1e5e4
Fixes: #36469
Releases: 6.2, 6.1, 6.0
Reviewed-on: https://review.typo3.org/21107
Reviewed-by: Markus Klein
Tested-by: Markus Klein
Reviewed-by: Stefan Neufeind
Tested-by: Stefan Neufeind
[BUGFIX] TS: Allow "0" as strPad.padWith

Replaces the test with empty() by isset() and
strlen() > 0. So other strings which are
handled by PHP as empty can be used for padding.

Resolves: #51650
Releases: 6.2, 6.1
Change-Id: Iee62f19f97b958ab2d02c6ca73052810a3c91117
Reviewed-on: https://review.typo3.org/23536
Reviewed-by: Stefan Neufeind
Tested-by: Stefan Neufeind
[BUGFIX] Store ext_autoload.php information in cache

The data build from the ext_autoload.php files of the Packages is stored
in the cache together with the package namespaces and the package
classes paths.

This is required because otherwise the information from the
ext_autoload.php files is not fetched at all after the cache was warmed
up.

Resolves: #53929
Releases: 6.2
Change-Id: I344888dff2ba673c221c957e4e9c966b9cee801b
[WIP][FEATURE] Allow continuous content record numbers

The CONTENT and the RECORDS content objects get a new setting called
continuousRecordNumbers.

If this setting is enabled the record counter in child content objects
will not be reset but continue counting. The parent content object
will then continue counting at the final count of the child content
object.

WIP: To have a clean counting it might be useful to disable the counter
for child CONTENT and RECORDS content object. In this way it would be
possible to use a even / odd class correctly. This setting can either
simply depend on continuousRecordNumbers or can also be an additional
setting (e.g. excludeContentObjectTypesFromCounting).

Resolves: #53717
Releases: 6.2
Change-Id: I3d1f9da6a12b9eb8d631350689f5a7c1f7ace3e5
[BUGFIX] Create valid sys_file refindex data

This patch prevents the creation of sys_refindex entries that point to no
table and no record.

Additionally it fixes the creation of sys_refindex records for sys_file
relations.

Resolves: #53712
Releases: 6.2, 6.1, 6.0
Change-Id: Ic864ade10e4e97fbd9017b9c779be68d911dd626
[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
[TASK] Non extension dirs in llXmlAutoFilename

Allow non extension dirs (e.g. fileadmin) in
\TYPO3\CMS\Core\Utility\GeneralUtility::llXmlAutoFilename()

Fixes: #34728
Releases: 6.2, 6.1, 4.7, 4.5
Change-Id: I073f42ec8b6d733246151df331201031187e1baf
[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
[TASK] Unify data for jump URL hash generation

The jump URL generation is unified and moved to a new JumpUrlUtility
class. All methods in the ContentObjectRenderer are now using the same
method for creating jump URLs.

The handling of file and directory names with special characters is
improved and FAL file records with special characters in their file names
will also be URL encoded.

Additionally Unit Tests are added to verify the jump URL function.

Resolves: #52156
Releases: 6.2
Change-Id: I7d2d8cec005aae56a118850071ca669ef9740c9d
[TAKS][CONF] Accept other settings in [SYS][setDBinit]

Since the mysqli interface recommends setting the charset using the
mysqli API the utf8 charset will be initialized when establishing the
database connection using mysqli_set_charset().

Additionally [SYS][setDBinit] can now be set to any value or can totally
be removed. To make sure the database connection still uses the utf8
encoding an additional check is added to the bootstrap process that
checks the MySQL character set session variables.

Finally the old default value of [SYS][setDBinit] will automatically be
removed if it is set to the old default value.

Resolves: #41596
Releases: 6.2
Change-Id: I8d0a9eba50495d52accb59627147c1c87b6a9bb5
[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
[BUGFIX] Correct handling of empty Backend Layouts

Since the default value of the page properties backend_layout and
backend_layout_next_level is an empty string the value in the select
item is changed from zero to an empty string for consistency.

Additionally the BackendLayoutView will treat an empty string equally
as a zero namely as a non set Backend Layout.

Resolves: #52596
Releases: 6.2
Change-Id: Ic792f748d005f5749f24a3e979b304c23320c8fa
[TASK] Reusable getCategoryFieldsForTable itemsProcFunc

Allow the usage of the method
\TYPO3\CMS\Core\Category\CategoryRegistry->getCategoryFieldsForTable
that can be used as itemsProcFunc for select fields in the TCA in
multiple context by introducing a new categorizedTable configuration key
in the config section of a column in the TCA.

This configuration key can either consist of a single string containing
the name of the table or a configuration array to define additional
conditions that need to be true so that a configured table is used.

Resolves: #53045
Releases: 6.2
Change-Id: I128cbeb6747a8f83e68cdaaaafbc3ab5901353d4
[BUGFIX] Followup Fluid Template Fallback paths

In the previously merged patch are some glitches and a regression:
- The usage (and test for existence) of deprecated functions has been
  removed.
- The value passed by the old behaviour overrides the new one
- The typo preventing usage setLayoutPaths() has been removed.

Intended usage:
plugin.tx_a.view.templateRootPaths{
	extendedA = <some additional path>
	default = <some default path>
}
The first hit will be used as template.
In case only numeric indizes are used, the entries get ordered.
See unit tests for a more specific description.

Change-Id: If4fa75347614cf9b352c6016430a928833cc62cd
Resolves: #52971
Releases: 6.2