[BUGFIX] Media field is empty on page localization

If comparing localization of regular tables (like tt_content) to
pages and its specific overlay table pages_language_overlay, the
main difference is, that regular tables are copied directly and
page translation are shown in the edit view first - without
persisting to the database and thus not having a proper uid at
this time, yet.

This means, that "localizeChildrenAtParentLocalization" in the
TCA field configuration won't have any effect.

This change brings back the IRRE localization icons for children
and "localize all" link for the media field. However, those are
only displayed if the new page overlay has been saved once.

Resolves: #57488
Releases: 6.2
Change-Id: I29886776b40accce48ce5cd10937ff65b20430fb
Reviewed-on: https://review.typo3.org/29719
Reviewed-by: Markus Klein
Reviewed-by: Wouter Wolters
Reviewed-by: Anja Leichsenring
Tested-by: Anja Leichsenring
Tested-by: Nadir S.
Reviewed-by: Frans Saris
Reviewed-by: Oliver Hader
Tested-by: Oliver Hader
[CLEANUP] Page Module: Do hovering via CSS, not JS

The ExtJS functionality for adding active classes can
be done via CSS hover pseudo classes.

This is faster (native browser functionality) and
also removes some ExtJS code. With this change
however, the hovering is not disabled
anymore when dragging.

Releases: 6.2
Resolves: #58359
Change-Id: Ifcc0307b436cf68dfcfe561444e779410978d576
Reviewed-on: https://review.typo3.org/29744
Tested-by: Stefan Neufeind
Reviewed-by: Nadir S.
Tested-by: Nadir S.
Reviewed-by: Nico Schober
Tested-by: Nico Schober
Reviewed-by: Christian Kuhn
Tested-by: Christian Kuhn
Reviewed-by: Nicole Cordes
Tested-by: Nicole Cordes
[BUGFIX] Retrieving extension fails with some PHP versions

XmlParser has an issue with PHP < 5.4.28 leading to
unexpected empty arrays raising warnings. If development
preset is activated, warnings are turned into exceptions,
so the extension list parser stops importing.

Resolves: #58418
Releases: 6.2, 6.1
Change-Id: Idc6453bd8dcc46a933a1d6d72361ffff5842e39d
Reviewed-on: https://review.typo3.org/29783
Reviewed-by: Christian Kuhn
Tested-by: Christian Kuhn
Reviewed-by: Anja Leichsenring
Tested-by: Anja Leichsenring
[TASK] Speed up functional tests

Optimize functional test bootstrap to improve performance:

* Database schema for single tests of a test case are always
  identical by design. So a database can be re-used between
  single tests to save the table creation overhead. Database
  tables are truncated instead which is quicker.
* Load less extensions by default, so less tables are created.
* Enable class loader caches.

Typically, tests instances with mysql on a ramdisk, tests are ~25%
quicker, for native mysql on hdd the performance impact is ~50%.

Change-Id: Ife1ea755c5336f7d4362b2affe7bba9e94862e92
Resolves: #58433
Releases: 6.2
Reviewed-on: https://review.typo3.org/29575
Reviewed-by: Christian Kuhn
Tested-by: Christian Kuhn
Reviewed-by: Anja Leichsenring
Tested-by: Anja Leichsenring
[TASK] Make Flow Package HHVM compatible

HHVM doesn't support calling array functions like key()
on objects, we need to cast object to array first.

Resolves: #57993
Related: #57992
Releases: 6.2
Change-Id: I8551860b103745622624dafd8f285db1a7b8f275
Reviewed-on: https://review.typo3.org/29508
Reviewed-by: Stefan Neufeind
Reviewed-by: Christian Kuhn
Tested-by: Christian Kuhn
Reviewed-by: Anja Leichsenring
Tested-by: Anja Leichsenring
[BUGFIX] Notification about missing impexp installation

This patch adds a notification to install the impexp extension before
the distribution list is shown.

Resolves: #57375
Releases: 6.2
Change-Id: I04da4afcf9ac43ff99190844fad9582665c0c346
Reviewed-on: https://review.typo3.org/29781
Reviewed-by: Sascha Wilking
Tested-by: Sascha Wilking
Reviewed-by: Jan Runte
Tested-by: Jan Runte
Reviewed-by: Anja Leichsenring
Tested-by: Anja Leichsenring
[BUGFIX] Add l18n_parent to tt_content TCA

If an editor ignores the "Copy default content elements"-button, it is
not possible to get a new content element in the alternative language
related to it's parent.

The existing l18n_parent field is never shown. This seems to be a bug
which was introduced in TYPO3 4.5 and exists up to now.

The patch adds the l18n_parent field to the general tab.

Resolves: #26709
Releases: 6.2
Change-Id: Id5f171cd4d1a6441cb58123aaa2b9bd337271556
Reviewed-on: https://review.typo3.org/29054
Reviewed-by: Frans Saris
Reviewed-by: Nadir S.
Tested-by: Nadir S.
Reviewed-by: Sascha Wilking
Tested-by: Sascha Wilking
Reviewed-by: Christian Kuhn
Tested-by: Christian Kuhn
Reviewed-by: Anja Leichsenring
Tested-by: Anja Leichsenring
Reviewed-by: Oliver Hader
Tested-by: Oliver Hader
[BUGFIX] Fix namespace of RelationTest

Resolves: #58450
Releases: 6.2
Change-Id: I78d39b0be0d4fc9a425ff3fa1e2424ee017d3180
Reviewed-on: https://review.typo3.org/29798
Reviewed-by: Anja Leichsenring
Tested-by: Anja Leichsenring
[CLEANUP] Remove abandoned functional test

To allow running of all functional tests, instead of relying on
travis.yml, we want to clean up broken and abandoned tests.

This one was not touched for over a year, does not work anymore
and noone really knows, if it is even suitable anymore.

Releases: 6.2
Resolves: #58446
Relates: #58445
Change-Id: Ie3926f557c0cc91d40ad4e4554f0f39de1901adf
Reviewed-on: https://review.typo3.org/29795
Reviewed-by: Christian Kuhn
Tested-by: Christian Kuhn
Reviewed-by: Oliver Hader
Reviewed-by: Anja Leichsenring
Tested-by: Anja Leichsenring
[TASK] Remove superfluous margin above #typo3-menu

Added padding-top to start the first li in the menue at the bottom line
of the first grey space in the content-area

Resolves: #57098
Releases: 6.2
Change-Id: I8ec5defea0cfae9483cfd19bdb918ee063b22f70
Reviewed-on: https://review.typo3.org/28556
Reviewed-by: Anja Leichsenring
Tested-by: Anja Leichsenring
Reviewed-by: Wouter Wolters
Tested-by: Wouter Wolters
Reviewed-by: Christian Kuhn
Tested-by: Christian Kuhn
[BUGFIX] IMAGE param stdWrap-function not working

Images in TypoScript are rendered using method cImage() of
the ContentObjectRender. This method has the possibility to
modify the HTML parameters to be set.

However, the parameters are not recognized, if those are only
rendered using stdWrap functions, e.g. using params.dataWrap

This change moves method stdWrapValue() from the FILES cObject
to the parent ContentObjectRenderer and delegates the call to
the new location of that method.
Besides that, a superfluous space has been removed from the
template markers definition.

Resolves: #58420
Releases: 6.2
Change-Id: I56229ef5aa5133205114c6ee945a68983ef3f52e
Reviewed-on: https://review.typo3.org/29796
Reviewed-by: Anja Leichsenring
Tested-by: Anja Leichsenring
Reviewed-by: Jan Runte
Tested-by: Jan Runte
Reviewed-by: Wouter Wolters
Reviewed-by: Oliver Hader
Tested-by: Oliver Hader
[TASK] EM: Add possibility to bypass system dependency checks

This patch extends the extension manager in three different ways. First
all dependencies are checked and error messages are bundled to show all
problems to the user.

Secondly on uploading an extension file the installation process is
started automatically.

The main change of this patch is to introduce a new function to prevent
(system) dependency checks. This means the checks for TYPO3 and PHP
version don't throw an exception anymore. Required extensions are tried
to be fetched from TER but don't stop installation either.

If errors occur on first installation process, a link to force the
installation is added to the notification. Before any installation
can be run, a dialog with a "break warning" is shown and has to be
confirmed by clicking the unfocussed field.

To be able to skip the system dependency check, a new property for
ExtensionManagementService and DependencyUtility is introduced which
controls disabling the system dependency check. All extension
dependencies are still resolved and needed extensions are tried
to be fetched from TER.

Resolves: #54512
Releases: 6.2
Change-Id: Ia11b7770a2773538bda48d889282ff51bf187c84
Reviewed-on: https://review.typo3.org/28924
Reviewed-by: Sascha Wilking
Tested-by: Sascha Wilking
Reviewed-by: Wouter Wolters
Tested-by: Wouter Wolters
[BUGFIX] Queries don't respect MM_match_fields

In case of sys_category and all other
MM-relations with MM_match_fields, parseConstraint
has no implementation for this property.

This patch adds MM_match_fields for
matching and deletion.

Resolves: #10487
Releases: 6.2
Change-Id: Id4f53fd4ed42dd6e785011b5efbc61f6ce62e022
Reviewed-on: https://review.typo3.org/29713
Reviewed-by: Fabien Udriot
Tested-by: Fabien Udriot
Reviewed-by: Wouter Wolters
Tested-by: Wouter Wolters
Reviewed-by: Anja Leichsenring
Tested-by: Anja Leichsenring
Revert "[TASK] EM: Add possibility to bypass system dependency checks"

The patch breaks Travis due to incomplete mocking.
Additionally was considered 'not ready' post merge. We work some more
on it.

This reverts commit 22695e3b2c5940c0be31541b16ff589390429826

Change-Id: I8194801b6be9d4c3b4f57d14d26df42df36f4b09
Reviewed-on: https://review.typo3.org/29813
Reviewed-by: Anja Leichsenring
Tested-by: Anja Leichsenring
[BUGFIX] Remove hardcoded calling script in help controller

The Extbase help command controller has the calling
script hardcoded in several places. This may cause
confusion if the calling script was different.

Use the real script from argv[0] instead.

Resolves: #58456
Releases: 6.2
Change-Id: I622484cb75ad87078ed8b5f923f1f3b972c64124
Reviewed-on: https://review.typo3.org/29809
Reviewed-by: Wouter Wolters
Tested-by: Wouter Wolters
Reviewed-by: Anja Leichsenring
Tested-by: Anja Leichsenring
[BUGFIX] Remove unnecessary redirect loops for first installation

This patch changes the default configuration to prevent any redirect
loops during the first installation process.

Resolves: #58380
Releases: 6.2
Change-Id: I8c0cbb779ee40b3310d2cb7ad6600d3bcaf4ec41
Reviewed-on: https://review.typo3.org/29802
Reviewed-by: Christian Kuhn
Tested-by: Christian Kuhn
Reviewed-by: Wouter Wolters
Reviewed-by: Anja Leichsenring
Tested-by: Anja Leichsenring
[BUGFIX] Clear all cache in install tool throws exception

reinitializeClassLoaderAndCachesAndPackageManagement
not only reloads the class loader and package management
but also reloads LocalConfiguratzion and
AdditionalConfiguration. This can lead to errors if
AdditionalConfiguration contains require_once calls.
The method is only used by ClearCacheService which
does not need the configuration reload.

Solution is to remove the method and introduce a new
one to unregister only the class loader. The other
bootstrap methods are now called directly in clear
cache of install tool.

Resolves: #58337
Releases: 6.2
Change-Id: I59cec5f3fc7dacbf83854c0559b4a8b3f143707d
Reviewed-on: https://review.typo3.org/29811
Reviewed-by: Christian Kuhn
Tested-by: Christian Kuhn
Reviewed-by: Jan Runte
Tested-by: Jan Runte
Reviewed-by: Anja Leichsenring
Tested-by: Anja Leichsenring
[TASK] Add phpdoc @var for calls to makeInstance()

Resolves: #58459
Related: #50248
Releases: 6.2
Change-Id: I3b72ecd65dff934a4eff10be7cb3c46ded948a34
Reviewed-on: https://review.typo3.org/29815
Reviewed-by: Christian Kuhn
Tested-by: Christian Kuhn
[TASK] Remove backslash for UnexpectedValueException in mod.php

Resolves: #58344
Releases: 6.2
Change-Id: Ic2cbc0a9d8a27c67e145ea9fef55c60d13466c33
Reviewed-on: https://review.typo3.org/29731
Reviewed-by: Oliver Klee
Reviewed-by: Markus Klein
Tested-by: Markus Klein
Reviewed-by: Christian Kuhn
Tested-by: Christian Kuhn
[BUGFIX] Removed extension stays in PackageStates file

Deleting an extension in the Extension Manager doesn't delete
the entry in PackageStates file.

Use the package manager to delete the extension. This will take care of
linked extensions (just remove the link) too.
The package manager will take care to remove the entry from the
PackageStates file.

If an extension is not listed in the PackageStates file (e.g. because
we uploaded it via FTP and forgot to clear the system caches),
directly remove the folder.

Resolves: #53459
Releases: 6.2
Change-Id: I10d5ef33ccf6438fece512478408c57d5d7486de
Reviewed-on: https://review.typo3.org/26921
Reviewed-by: Jan Runte
Tested-by: Jan Runte
Reviewed-by: Helmut Hummel
Reviewed-by: Christian Kuhn
Tested-by: Christian Kuhn