[BUGFIX] Initialize extension name in command requests

This patch initializes the extension name in the configuration manager
as soon as it is available during an Extbase command line request.

Resolves: #51329
Releases: 6.2, 6.1, 6.0
Change-Id: I73b0f0e7a0b20e1773c9eb92f0d2175416ce2bb1
Reviewed-on: https://review.typo3.org/23883
Reviewed-by: Wouter Wolters
Tested-by: Wouter Wolters
Reviewed-by: Anja Leichsenring
Tested-by: Anja Leichsenring
[FEATURE] ext:install Implement template files in FolderStructure

The folder structure definition can be simplified a bit if target
content of files is not stored in the structure definition array
but moved to template files. This also enables handling of binary
files.
The patch implements an option 'targetContentFile' to FileNode and
adapts the current FolderStructure definition to use it.

Change-Id: I097e87a1f7a16e325b398468286fe661abec3553
Resolves: #52351
Releases: 6.2
Reviewed-on: https://review.typo3.org/24122
Reviewed-by: Wouter Wolters
Tested-by: Wouter Wolters
Reviewed-by: Susanne Moog
Tested-by: Susanne Moog
[TASK] ext:install Protect some methods in FolderStructure

Some methods within FolderStructure class hierachy are public
but should be used internally only. The patch protects them.

Change-Id: I273f829f29ca4f5a6da1d03f028be7a8500e222b
Resolves: #52354
Releases: 6.2
Reviewed-on: https://review.typo3.org/24123
Reviewed-by: Wouter Wolters
Tested-by: Wouter Wolters
Reviewed-by: Susanne Moog
Tested-by: Susanne Moog
[BUGFIX] Fix wrong handling of php and TYPO3 dependencies

Due to a superfluos try-catch block dependencies for TYPO3 and
PHP version were not checked correctly.

Additionally the TER version comparison was wrong as it did not
include the given version (only less or greater was checked, not
...OrEqual).

Resolves: #48809
Resolves: #51730
Resolves: #51182
Releases: 6.2, 6.1, 6.0
Change-Id: I773e1af014cd3e8525794c2fcdc615ea8a5f36a1
Reviewed-on: https://review.typo3.org/23673
Reviewed-by: Christian Kuhn
Tested-by: Christian Kuhn
Reviewed-by: Wouter Wolters
Tested-by: Wouter Wolters
[FEATURE] Add possibility to use an extension as repository

Sometimes extensions depend on customized versions of other
extensions or on extensions that aren't released to the TER.

This feature allows an extension to deliver it's own dependencies
by having the unpacked extensions inside the folder
Initialisation/Extensions. The extensions are then copied to
typo3conf/ext when resolving the dependencies.

Resolves: #51835
Releases: 6.2
Change-Id: I66f6e5d5d40e11471f9766ac2ed9d0eb5386eb49
Reviewed-on: https://review.typo3.org/23672
Reviewed-by: Stefan Neufeind
Tested-by: Stefan Neufeind
[BUGFIX] Follow-up to: Use an extension as repository

Add missing files that got lost during conflict resolving

Change-Id: If9fc0e23aba97659222bee0c5b2205c5030411fc
Resolves: #51835
Releases: 6.2
Reviewed-on: https://review.typo3.org/24129
Reviewed-by: Christian Kuhn
Tested-by: Christian Kuhn
[FEATURE] ext:install Relaxed permission check

The document root folder may not have correct permissions and
they can not be fixed if the owner is not the executing webserver
user.

This is a common issue during installation, currently the first
step breaks if permission on document root are not 2770 and the
folder is not owned by the executing webserver user.

The patch adds a new option "targetPermissionRelaxed" to
DirectoryNodes and uses it on the RootNode to lower the severity
if permissions are not correct. The installation will proceed
then as long as sub folders can be created.

Change-Id: Ibde9f7ff0dde14502ac24fdb73c0a2ed384119a6
Resolves: #52356
Releases: 6.2
Reviewed-on: https://review.typo3.org/24130
Reviewed-by: Anja Leichsenring
Tested-by: Anja Leichsenring
Reviewed-by: Susanne Moog
Tested-by: Susanne Moog
[FEATURE] ext:install Show number of folder structure errors in menu

Similar to the environment status the number of folder structure
errors are now shown in the left menu.

Change-Id: I665c32e8a3c4389941437a2bb6caeb32b862b673
Resolves: #52368
Releases: 6.2
Reviewed-on: https://review.typo3.org/24136
Reviewed-by: Anja Leichsenring
Tested-by: Anja Leichsenring
Reviewed-by: Markus Klein
Reviewed-by: Christian Kuhn
Tested-by: Christian Kuhn
[BUGFIX] ext:install Better error handling in first folder step

During installation it may happen that the folder structure reports
errors during creation, but still creates the main folder structure.
This is the case for example if the document root or fileadmin
is a link and not a directory. In those cases the installer does not
create a LocalConfiguration and shows the first step again. It will
stop with a "ENABLE_INSTALL_TOOL" file missing message afterwards.

This is better sanitized with the patch: If the folder structure
reports errors but still successfully created a typo3conf folder, the
LocalConfiguration is also created and the next step is called after
redirect.

Furthermore, two possible warnings are caught in the folder structure
and adapted status messages are created.

Change-Id: I54d99f826336c513641028f29d389da845d7d26a
Resolves: #52367
Releases: 6.2
Reviewed-on: https://review.typo3.org/24135
Reviewed-by: Anja Leichsenring
Tested-by: Anja Leichsenring
Reviewed-by: Susanne Moog
Tested-by: Susanne Moog
Reviewed-by: Christian Kuhn
Tested-by: Christian Kuhn
[BUGFIX] TS is fetched from cache incorrectly sometimes

If $TYPO3_CONF_VARS['FE']['defaultTypoScript_constants'] or
$TYPO3_CONF_VARS['FE']['defaultTypoScript_setup'] are set through
the PHP code, cached TS will not be found in cache. This would
result in TS parsing every time when there are USER_INT objects
on the page. It may slow down the page with USER_INT objects
by about 300% comparing to the cached version.

This change is re-added after it got reverted due to lack of reviews in
Ia0fd65a35897c71d60c48c0b03098ce67ad16c70.

Change-Id: Ief3a065451644423b236489729716b906f3d4500
Resolves: #43540
Releases: 4.5, 4.7, 6.0, 6.1, 6.2
Reviewed-on: https://review.typo3.org/18072
Reviewed-by: Jigal van Hemert
Tested-by: Jigal van Hemert
[TASK] Folder not writeable should be an "Error" not a "Warning"

The Install Tool checks for permissions in it's folder structure.  A
folder (typo3temp, uploads, fileadmin) not being writeable now is an
Error and not only a Warning thus displaying a red badge in the Install
Tool main menu.

Resolves: #52407
Releases: 6.2
Change-Id: I6de5f2eace4ecdf089848efbf063a82302aea093
Reviewed-on: https://review.typo3.org/24180
Reviewed-by: Christian Kuhn
Tested-by: Christian Kuhn
Reviewed-by: Wouter Wolters
Tested-by: Wouter Wolters
[TASK] Make Install Tool look beautiful in modern IE's

IE9 and later understand CSS3 features which we use in the Install
Tool. Make sure IE don't fall back into IE7 mode.

Resolves: #52413
Releases: 6.2
Change-Id: I48933d44e63a59deac131a7cbfeda38fc77aafff
Reviewed-on: https://review.typo3.org/24186
Reviewed-by: Wouter Wolters
Reviewed-by: Christian Kuhn
Reviewed-by: Ernesto Baschny
Tested-by: Ernesto Baschny