[TASK] EM: Add possibility to bypass system dependency checks 24/28924/15
authorNicole Cordes <typo3@cordes.co>
Thu, 27 Mar 2014 21:30:58 +0000 (22:30 +0100)
committerWouter Wolters <typo3@wouterwolters.nl>
Sat, 3 May 2014 12:38:47 +0000 (14:38 +0200)
commit22695e3b2c5940c0be31541b16ff589390429826
treec3147dfcf589ae70c94dc0fd099646ff7b6839b4
parentf7e8ef16ff20993b5a4ec2850e680ee615e583f7
[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
typo3/sysext/extensionmanager/Classes/Controller/AbstractController.php
typo3/sysext/extensionmanager/Classes/Controller/ActionController.php
typo3/sysext/extensionmanager/Classes/Controller/DownloadController.php
typo3/sysext/extensionmanager/Classes/Controller/UploadExtensionFileController.php
typo3/sysext/extensionmanager/Classes/Service/ExtensionManagementService.php
typo3/sysext/extensionmanager/Classes/Utility/DependencyUtility.php
typo3/sysext/extensionmanager/Resources/Private/Language/locallang.xlf
typo3/sysext/extensionmanager/Resources/Public/JavaScript/main.js
typo3/sysext/extensionmanager/Resources/Public/JavaScript/ter.js
typo3/sysext/extensionmanager/ext_tables.php