[BUGFIX] storagePid is lost when persistence.recursive is set

If recursive storagePid is set via TypoScript, the storagePid
itself is missing in the list of pids.

Resolves: #51064
Releases: 6.2, 6.1
Change-Id: I5f06911bb60b847e4a97b5690e57557d4dec66b7
Reviewed-on: https://review.typo3.org/23086
Reviewed-by: Wouter Wolters
Tested-by: Wouter Wolters
Reviewed-by: Stefan Neufeind
Tested-by: Stefan Neufeind
Reviewed-by: Anja Leichsenring
Tested-by: Anja Leichsenring
[BUGFIX] Avoid usage of subheader in mailform

Since TYPO3 CMS 4.7 the subheader field is rendered by lib.stdheader
if the chosen doctype is HTML 5. However the old mailform (ab)uses this
field for storing the recipient e-mail address. The subheader must
not be displayed in this case.

Resolves: #46094
Releases: 6.2, 6.1, 6.0, 4.7
Change-Id: I19d13e65b941e2514a9c4a12cb37f015661e9d8f
Reviewed-on: https://review.typo3.org/22391
Reviewed-by: Jo Hasenau
Tested-by: Jo Hasenau
Reviewed-by: Wouter Wolters
Tested-by: Wouter Wolters
[BUGFIX] Fix file permission methods in BackendUserAuthentication

Take default TSConfig file permissions into account:

File permissions configured in User TSConfig,
are not taken into account, because the properties
from the getTSConfig method are returned in a
'properties' key of an array but the top level
array is used. Use getTSConfigProp instead.

Fix the bit wise check for old file permissions:

XOR the value is wrong because it gives the wrong
result if more bits are set. Use AND operation
to properly check if a specific bit is not set.

Check if the user is admin in getFilePermissionsForStorage()

Add tests to confirm the desired behaviour.

Releases: 6.0, 6.1, 6.2
Resolves: #51004
Change-Id: Ia5d6fa1cb47a74306fe5465a0e70c2f2aea2a4b8
Reviewed-on: https://review.typo3.org/23037
Reviewed-by: Anja Leichsenring
Tested-by: Anja Leichsenring
Reviewed-by: Stefan Neufeind
Reviewed-by: Helmut Hummel
Tested-by: Helmut Hummel
[TASK] UnitTests.xml cleanup

Minor cleanup in UnitTests.xml, BackupGlobals can be enabled
by default.

Resolves: #51101
Releases: 6.2

Change-Id: Ia1271d60bf29a5ac7adb98116d9d7a7a43f00b47
Reviewed-on: https://review.typo3.org/23124
Reviewed-by: Christian Kuhn
Tested-by: Christian Kuhn
[TASK] Introduce relative line-heights

The line-height for the backend was fixed to 14px.
But line-heights should be relative to the font-size.

With this standard line-heights are 1.5 x font-size.

Change-Id: I2c098141b4905b1ac7bf756266e77dd2078ea6f2
Resolves: #51000
Releases: 6.2
Reviewed-on: https://review.typo3.org/23021
Reviewed-by: Ingo Pfennigstorf
Tested-by: Ingo Pfennigstorf
Reviewed-by: Wouter Wolters
Tested-by: Wouter Wolters
[TASK] Make tests use correct namespaces

Change-Id: I7cc308d3c5c59b1bf8922b6830cf29fb726caa56
Resolves: #51103
Releases: 6.2, 6.1, 6.0
Reviewed-on: https://review.typo3.org/23127
Reviewed-by: Christian Kuhn
Tested-by: Christian Kuhn
[TASK] Enable unittests for EXT:documentation

Travis should start including the unittests for EXT:documentation
in its builds as well.

Change-Id: Ie59945964dbf684d3493b0d7581c41b0cde4750f
Resolves: #51114
Releases: 6.2
Reviewed-on: https://review.typo3.org/23132
Reviewed-by: Anja Leichsenring
Tested-by: Anja Leichsenring
[TASK] Disable scheduler-tests if EXT:scheduler not loaded

Change-Id: I62ec38fc27330e74c4bc3eed6ded3a2f4a6de550
Resolves: #51115
Releases: 6.2, 6.1, 6.0
Reviewed-on: https://review.typo3.org/23133
Reviewed-by: Anja Leichsenring
Tested-by: Anja Leichsenring
[TASK] Standalone functional test runner

Introduce base code for a standalone php test runner.

"./typo3conf/ext/phpunit/Composer/vendor/bin/phpunit
	-c typo3/sysext/core/Build/FunctionalTests.xml"

This way phpunit is called fully standalone and does not
depend on TYPO3 CMS bootstrap itself.

Resolves: #51111
Releases: 6.2
Change-Id: Ie790eec315f7a273fc62856df3169aa56b2ad60d
Reviewed-on: https://review.typo3.org/23131
Reviewed-by: Anja Leichsenring
Tested-by: Anja Leichsenring
Reviewed-by: Stefan Neufeind
Tested-by: Stefan Neufeind
[FEATURE] Prepare generic persistence for overlay handling by signals

To get a better grip on languages and workspaces, we decided
to separate their handling from the storageBackend.

This is the first step, introducing the signals needed to
invoke external action.

In some cleanup it also straightens up the names of the
member variables.

Resolves: #51106
Releases: 6.2
Change-Id: Ie4a79270c5fe5f559f0950ea157c137c5c9cccd1
Reviewed-on: https://review.typo3.org/23128
Reviewed-by: Stefan Neufeind
Tested-by: Stefan Neufeind
[TASK] Reformat .travis.yml to be better readable

Resolves: #51119
Releases: 6.2
Change-Id: Ibbabf4de13aa4bff069021629bedb14fd111f091
Reviewed-on: https://review.typo3.org/23136
Reviewed-by: Stefan Neufeind
Reviewed-by: Anja Leichsenring
Tested-by: Anja Leichsenring
Reviewed-by: Christian Kuhn
Tested-by: Christian Kuhn
[TASK] Execute standalone functional tests in travis

Change-Id: If9195b5ef908ecf09d1a03f07f93cf983beaf474
Resolves: #51121
Releases: 6.2
Reviewed-on: https://review.typo3.org/23138
Reviewed-by: Christian Kuhn
Tested-by: Christian Kuhn
[BUGFIX] Show correct record title for be_groups and be_users

Currently it lists groups only using field title of
be_groups table regardless of any label definitions in TCA.
Use BackendUtility::getRecordTitle() instead.

Change-Id: I051c29687cb51d1883846b3cb780409c1e1cadc4
Resolves: #34631
Releases: 6.2, 6.1, 6.0
Reviewed-on: https://review.typo3.org/9631
Reviewed-by: Wouter Wolters
Tested-by: Wouter Wolters
[TASK] Implement standalone functional test API

Test encapsulation and a controlled environment is
crucial for solid functional tests.

The patch creates a full TYPO3 CMS instance within
typo3temp/ together with an own database and
LocalConfiguration to run a specific functional test
in this environment. A full TYPO3 CMS bootstrap of
this instance is done. A new environment with a fresh
PHP process is created for each and every single test.

Functional test can use the API by calling parent::setUp()
and parent::tearDown().

The functional suite can be called directly with phpunit
"./typo3conf/ext/phpunit/Composer/vendor/bin/phpunit
	-c typo3/sysext/core/Build/FunctionalTests.xml"

Currently the test suite must be called from the document
root folder.

The patch is currently a base patch for the main API implementing
immediatly needed stuff. With further patches sanitizing and
more details will be added.

Change-Id: I54f652f6a346a5155b5c33e4a065ab37898ff5b2
Resolves: #51091
Releases: 6.2
Reviewed-on: https://review.typo3.org/23117
Reviewed-by: Christian Kuhn
Tested-by: Christian Kuhn
Reviewed-by: Stefan Neufeind
Reviewed-by: Tymoteusz Motylewski
Tested-by: Tymoteusz Motylewski
Reviewed-by: Anja Leichsenring
Tested-by: Anja Leichsenring
[TASK] Refactor functional base test class

Extract setUp() and tearDown() code to an own class
and start documenting the whole sytem.

Resolves: #51144
Releases: 6.2

Change-Id: Id71e9f9111f62ee04e5f8ebcec121e5e01b958b3
Reviewed-on: https://review.typo3.org/23154
Reviewed-by: Tymoteusz Motylewski
Tested-by: Tymoteusz Motylewski
Reviewed-by: Anja Leichsenring
Tested-by: Anja Leichsenring
Reviewed-by: Helmut Hummel
Tested-by: Helmut Hummel
[BUGFIX] Query parameters of external link may get altered

If an external link is set to the same domain as the BE domain and
the id query parameter is present, any other query parameters will
be altered (and repeated).
Solution: href of external link should remain unaltered.

Resolves: #47844
Releases: 6.0, 6.1, 6.2
Change-Id: I79564ebf63ee4f92bfd3f95b17f72592ea849163
Reviewed-on: https://review.typo3.org/22682
Reviewed-by: Wouter Wolters
Tested-by: Wouter Wolters
Reviewed-by: Philipp Gampe
Tested-by: Philipp Gampe
[BUGFIX] Not possible to finish update wizard

When running the update wizard you are not able to finish it.
Therefore a back button is introduced when there is no
upgrade left.

Change-Id: Iaf66ced20e0dc0ec2870a559d6beee802011ae75
Resolves: #47735
Releases: 6.2
Reviewed-on: https://review.typo3.org/22679
Reviewed-by: Christian Kuhn
Tested-by: Christian Kuhn
Reviewed-by: Philipp Gampe
Tested-by: Philipp Gampe
[BUGFIX] TCA: subtypes_addlist not processed

TCA: subtypes_addlist is not processed
if the subtype_value_field is in a palette

Fixes: #30636
Releases: 6.2, 6.1, 6.0, 4.7, 4.5
Change-Id: I6bcaaf36c330962c1d7d9fdd4a73ae502e9710dc
Reviewed-on: https://review.typo3.org/9549
Reviewed-by: Wouter Wolters
Tested-by: Lucas Bremgartner
Reviewed-by: Ernesto Baschny
Tested-by: Ernesto Baschny
Reviewed-by: Philipp Gampe
Tested-by: Philipp Gampe
[CLEANUP] remove deprecated repository constructor

Resolves: #51142
Releases: 6.2
Change-Id: Iff5850940fa6e92ccd890564e2a90d11e9cf5e8d
Reviewed-on: https://review.typo3.org/23151
Reviewed-by: Oliver Klee
Reviewed-by: Anja Leichsenring
Tested-by: Anja Leichsenring
Reviewed-by: Stefan Neufeind
Tested-by: Stefan Neufeind
[TASK] Remove dispensable headlines in EXT: beuser

The amount of headline in backend user module can be reduced.
There is one headline for one view in Backend User Management.

Change-Id: If6b58b0ac2a09ecc9020714dba01448b6c159cb5
Resolves: #51147
Releases: 6.2
Reviewed-on: https://review.typo3.org/23163
Reviewed-by: Philipp Gampe
Tested-by: Philipp Gampe
Reviewed-by: Stefan Neufeind
Tested-by: Stefan Neufeind