2 namespace TYPO3\CMS\Extensionmanager\Controller;
82 $installedExtensions = \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::getLoadedExtensionListArray();
84 if (in_array($extensionKey, $installedExtensions)) {
86 $this->installUtility->uninstall($extensionKey);
89 $extension = $this->extensionModelUtility->mapExtensionArrayToModel(
90 $this->installUtility->enrichExtensionWithDetails($extensionKey)
92 if ($this->managementService->installExtension($extension) ===
false) {
93 $this->
redirect(
'unresolvedDependencies',
'List', null, array(
'extensionKey' => $extensionKey));
97 $this->
addFlashMessage($e->getMessage(),
'', \TYPO3\CMS\Core\Messaging\FlashMessage::ERROR);
98 }
catch (\TYPO3\CMS\Core\Package\Exception\PackageStatesFileNotWritableException $e) {
99 $this->
addFlashMessage($e->getMessage(),
'', \TYPO3\CMS\Core\Messaging\FlashMessage::ERROR);
101 $this->
redirect(
'index',
'List', null, array(self::TRIGGER_RefreshModuleMenu =>
true));
112 $this->managementService->setSkipDependencyCheck(
true);
113 $this->
forward(
'toggleExtensionInstallationState', null, null, array(
'extensionKey' => $extensionKey));
125 $this->installUtility->removeExtension($extension);
128 'extensionList.remove.message',
131 'extension' => $extension,
136 $this->
addFlashMessage($e->getMessage(),
'', \TYPO3\CMS\Core\Messaging\FlashMessage::ERROR);
137 }
catch (\TYPO3\CMS\Core\Package\Exception $e) {
138 $this->
addFlashMessage($e->getMessage(),
'', \TYPO3\CMS\Core\Messaging\FlashMessage::ERROR);
151 $fileName = $this->fileHandlingUtility->createZipFileFromExtension($extension);
152 $this->fileHandlingUtility->sendZipFileToBrowserAndDelete($fileName);
164 $sqlData = $this->installUtility->getExtensionSqlDataDump($extension);
165 $dump = $sqlData[
'extTables'] . $sqlData[
'staticSql'];
166 $fileName = $extension .
'_sqlDump.sql';
167 $filePath = PATH_site .
'typo3temp/ExtensionManager/' . $fileName;
168 $error = \TYPO3\CMS\Core\Utility\GeneralUtility::writeFileToTypo3tempDir($filePath, $dump);
169 if (is_string($error)) {
170 throw new \TYPO3\CMS\Extensionmanager\Exception\ExtensionManagerException($error, 1343048718);
172 $this->fileHandlingUtility->sendSqlDumpFileToBrowserAndDelete($filePath, $fileName);