Exemplo n.º 1
0
 /**
  * Install an extension from TER
  *
  * @throws \TYPO3\CMS\Extensionmanager\Exception\ExtensionManagerException
  * @return void
  */
 public function installFromTerAction()
 {
     $result = FALSE;
     $errorMessage = '';
     try {
         if (!$this->request->hasArgument('extension')) {
             throw new \TYPO3\CMS\Extensionmanager\Exception\ExtensionManagerException('Required argument extension not set.', 1334433342);
         }
         $extensionUid = $this->request->getArgument('extension');
         if ($this->request->hasArgument('downloadPath')) {
             $this->downloadUtility->setDownloadPath($this->request->getArgument('downloadPath'));
         }
         /** @var $extension \TYPO3\CMS\Extensionmanager\Domain\Model\Extension */
         $extension = $this->extensionRepository->findByUid(intval($extensionUid));
         $this->prepareExtensionForImport($extension);
         $result = $this->managementService->resolveDependenciesAndInstall($extension);
     } catch (\TYPO3\CMS\Extensionmanager\Exception\ExtensionManagerException $e) {
         $errorMessage = $e->getMessage();
     }
     $this->view->assign('result', $result)->assign('extension', $extension)->assign('errorMessage', $errorMessage);
 }