[TASK] Ensure that cli user is admin on extension install and uninstall

Extension install and uninstall is an admin task. Calling the belonging
CommandController on cli should ensure, that the user has admin
rights.

This adds API to the CommandController to avoid code duplication
in every controller to achieve this.

Distribution packages could be installed via cli without errors now.

Resolves: #59556
Releases: 6.3, 6.2
Change-Id: Icd1b6bf4379322c8bec07531a15d2171b103e076
Reviewed-on: https://review.typo3.org/30715
Reviewed-by: Ernesto Baschny
Tested-by: Ernesto Baschny
[TASK] Extension manager: default sorting for Extensions

EM "Get Extension" does not show the awesome extension culture
that lives in the TER. Change sorting basically with the primary goal
to order extensions by update.

Resolves: #59583
Releases: 6.3, 6.2
Change-Id: Ie8aebc13c41427e0603fa5313b794996d01fbc44
Reviewed-on: https://review.typo3.org/30735
Reviewed-by: Markus Klein
Tested-by: Markus Klein
Reviewed-by: Robert van Kammen
Tested-by: Robert van Kammen
Reviewed-by: Wouter Wolters
Tested-by: Wouter Wolters
[FEATURE] Add uid to SysDomainCache

If you are building an extension, that outputs
data depending on a selected domain, it is easier
to compare the uid of sys_domain records
than the domainName itself.

Resolves: #57297
Releases: 6.3
Change-Id: Ic1efd3efe043f28ef7737f407d9a200b168d9685
Reviewed-on: https://review.typo3.org/28794
Reviewed-by: Markus Schubath
Tested-by: Markus Schubath
Reviewed-by: Krzysztof Adamczyk
Reviewed-by: Andrea Schmuttermair
Reviewed-by: Markus Klein
Tested-by: Markus Klein
[BUGFIX] Remove warnings in ImportExportController.php

This patch adds cleanup to prevent warnings when accessing the
import/export module.

Resolves: #58534
Releases: 6.3, 6.2
Change-Id: I1e1afbea07b0c8e8c4bc29d25739882907c79b4b
Reviewed-on: https://review.typo3.org/29881
Reviewed-by: Susanne Moog
Reviewed-by: Wouter Wolters
Reviewed-by: Christian Kuhn
Tested-by: Christian Kuhn
Reviewed-by: Markus Klein
Tested-by: Markus Klein
[BUGFIX] Pass field name variable to flexform DS utility

A field name parameter is not being passed from within
DataHandler when copying a record which has a FlexForm
DF associated with it. This causes dynamic FlexForm DS
definitions to not be able to depend on the field name,
in turn causing the problem that an incorrect DS may be
returned from the DS utility which makes TYPO3 process
the data value incorrectly (for example, not detecting
file fields and processing the values accordingly).

To solve this the $field parameter is passed.

Resolves: #59423
Releases: 6.3, 6.2, 6.1
Change-Id: Icfafd553f76e17ad5db651bb3f5dea52b140dcf7
Reviewed-on: https://review.typo3.org/30633
Reviewed-by: Cedric Ziel
Tested-by: Cedric Ziel
Reviewed-by: Markus Klein
Tested-by: Markus Klein
[BUGFIX] Get unit tests working again

Changed serialize behaviour in PHP triggers funny phpunit issues in
some tests. Switching to phpunit master for now and skipping some
tests makes travis-ci green again and gives us time for detail fixes.

Change-Id: I1c694c0c5dba98b31b9ef7c826fa6614ffa512df
Resolves: #59685
Releases: 6.3, 6.2
Reviewed-on: https://review.typo3.org/30889
Reviewed-by: Christian Mueller
Reviewed-by: Oliver Klee
Reviewed-by: Christian Kuhn
Tested-by: Christian Kuhn
[TASK] Increase Extension Manager->showConfiguration input field width

Increases the width of string input fields to 300 pixels.

Resolves: #59679
Releases: 6.2, 6.3
Change-Id: Ia415a6cdf81e4f6192a7e3fb93d8f01d8a749c6a
Reviewed-on: https://review.typo3.org/30904
Reviewed-by: Susanne Moog
Tested-by: Susanne Moog
Reviewed-by: Wouter Wolters
Tested-by: Wouter Wolters
[BUGFIX] Make Functional tests work on fast machines

Adds more entropy to the uniqid() call. So each call inside
foreach loop will generate unique value.
As uniqid() generates values based on current time,
subsequent calls may return the same value on a fast machine.

On Windows it's even worse, as uniqid()
has single-second-resolution out of the box.

Resolves: #59529
Relates: #58602
Releases: 6.3, 6,2
Change-Id: I7476f85961e906905acaca7fd816e37375c9817c
Reviewed-on: https://review.typo3.org/30696
Reviewed-by: Marc Bastian Heinrichs
Tested-by: Marc Bastian Heinrichs
Reviewed-by: Christian Kuhn
Tested-by: Christian Kuhn
[BUGFIX] Check for logged in user before showing cookie warning

If a redirect for login error is setup, the warning cookie
message is displayed instead of redirecting.

Resolves: #59493
Releases: 6.3, 6.2
Change-Id: I2f63b6630863ece0704198f247980c4d6c08f65a
Reviewed-on: https://review.typo3.org/30723
Reviewed-by: Oliver Hader
Reviewed-by: Marc Wöhlken
Tested-by: Marc Wöhlken
Reviewed-by: Markus Klein
Tested-by: Markus Klein
[TASK] Re-add unit tests for ExtensionCompatibilityTester

The tests for the ExtensionCompatibilityTester are currently skipped.
This patch removes the broken tests and leaves the working ones.

Releases: 6.3
Resolves: #59700

Change-Id: I10a49d0dddf2807bd50944837e31f0105374c8c9
Reviewed-on: https://review.typo3.org/30915
Reviewed-by: Anja Leichsenring
Tested-by: Anja Leichsenring
Reviewed-by: Christian Kuhn
Tested-by: Christian Kuhn
[TASK] Raise recommended max nesting level

Raise recommended max nesting level to 400 as 
the current value of 250 does not suffice.

Resolves: #59391
Releases: 6.3, 6.2
Change-Id: Ibccb61991809e24baddb21bd46f190cd0b8d907d
Reviewed-on: https://review.typo3.org/30608
Reviewed-by: Christian Kuhn
Tested-by: Christian Kuhn
Reviewed-by: Markus Klein
Tested-by: Markus Klein
[BUGFIX] Nested flexforms no longer throw exception

This patch prevents nested flexforms from throwing
an exception on saving or opening the record.

Resolves: #59368
Releases: 6.2

Change-Id: Iadeeecc3aef92b8bcc4f7fe4e22882d924f10a50
Reviewed-on: https://review.typo3.org/30590
Reviewed-by: Christian Kuhn
Tested-by: Christian Kuhn
Reviewed-by: Anja Leichsenring
Tested-by: Anja Leichsenring
[TASK] Remove skipped FAL tests

FAL includes some tests that are skipped ever since
FAL was merged. Most of them don't even have a
comment as to why and need to be completely rewritten
as the functionality changed.

We should remove these tests for now.

Change-Id: Ib75b4ea104a968019e06937974eaa1846cfe3a8a
Releases: 6.3
Resolves: #59728
Reviewed-on: https://review.typo3.org/30940
Reviewed-by: Christian Kuhn
Tested-by: Christian Kuhn
Reviewed-by: Wouter Wolters
Tested-by: Wouter Wolters
[BUGFIX] language condition does not match exact string

The documentation for conditions of type "language" states: "The values
must be a straight match with the value of getenv('HTTP_ACCEPT_LANGUAGE')
from PHP." (or you can use wildcards). Exact matches are actually
not working - and the unit test showing the problem was skipped.

Patch adds the feature as documented and adjusts the unit test.

Change-Id: I5691fff41c889476d8149d6f92c26731ad7bb1fd
Resolves: #59707
Releases: 6.3
Reviewed-on: https://review.typo3.org/30920
Reviewed-by: Wouter Wolters
Tested-by: Wouter Wolters
Reviewed-by: Christian Kuhn
Tested-by: Christian Kuhn
[TASK] Add support for having files outside the t3d/xml in impexp

Impexp files are blown up from the files that are included as base64.
This patch adds the possibility to have the files separated from the
 t3d/xml export file. They are saved to a folder beside the export file.

Resolves: #57379
Releases: 6.3, 6.2
Change-Id: Ib8bdc4336c64d2eae0e993132a5fce84eb01f766
Reviewed-on: https://review.typo3.org/30453
Reviewed-by: Wouter Wolters
Tested-by: Wouter Wolters
Reviewed-by: Anja Leichsenring
Tested-by: Anja Leichsenring
[TASK] Remove not maintained ChangeLog in EXT:linkvalidator

Resolves: #59738
Releases: 6.3
Change-Id: Idb08c3f7311ae97590495c77d180429baabefcda
Reviewed-on: https://review.typo3.org/30960
Reviewed-by: Georg Ringer
Tested-by: Georg Ringer
[TASK] FollowUp to add support for having files outside the t3d/xml

Fix functional tests.

Resolves: #57379
Change-Id: Iafbf4e2b7e68dd27b488f20141f34680f57bc9c4
Reviewed-on: https://review.typo3.org/30955
Reviewed-by: Wouter Wolters
Tested-by: Wouter Wolters
[BUGFIX] Treat link handler links as internal URLs

The RteHtmlParser will now check if a scheme found by parse_url()
matches a configured typolinkLinkHandler. If this is the case the
link will be treated as internal.

Resolves: #49036
Releases: 6.3, 6.2, 6.1
Change-Id: Ie4e6bded7a1c4d0c61e4f1a20bc23115612c1519
Reviewed-on: https://review.typo3.org/27680
Reviewed-by: Markus Klein
Tested-by: Markus Klein
[TASK] Improve StringUtility

This patch adds the methods beginsWith() and endsWith().
Furthermore it deprecates the (Core-wise unused) isLastPartOfString()
method, because we slightly change the implementation of it, which is
now part of endsWith().

Resolves: #59132
Resolves: #45499
Releases: 6.3
Change-Id: Ida21a85a3cb724618a490f7eab753978a1bfaa70
Reviewed-on: https://review.typo3.org/30611
Reviewed-by: Susanne Moog
Tested-by: Susanne Moog
Reviewed-by: Markus Klein
Tested-by: Markus Klein
[BUGFIX] Don't ignore file imports in fallback storage

An export could contain sys_file records that are "stored" in the
fallback storage (ID 0). They must not be ignored.

Resolves: #58841
Releases: 6.3, 6.2
Change-Id: I39855810621310831ab1353c5e56f4529a7ac3aa
Reviewed-on: https://review.typo3.org/30147
Reviewed-by: Wouter Wolters
Tested-by: Wouter Wolters
Reviewed-by: Markus Klein
Tested-by: Markus Klein