コード例 #1
0
 /**
  * Shows list of extensions present in the system
  *
  * @return void
  */
 public function indexAction()
 {
     $this->pageRenderer->addJsFile('../t3lib/js/extjs/notifications.js');
     $availableExtensions = $this->listUtility->getAvailableExtensions();
     $availableAndInstalledExtensions = $this->listUtility->getAvailableAndInstalledExtensions($availableExtensions);
     $availableAndInstalledExtensions = $this->listUtility->enrichExtensionsWithEmConfAndTerInformation($availableAndInstalledExtensions);
     $this->view->assign('extensions', $availableAndInstalledExtensions);
 }
コード例 #2
0
 /**
  * Returns all objects of this repository.
  *
  * @return array
  */
 public function findAll()
 {
     if (!count($this->extensions)) {
         $availableExtensions = $this->listUtility->getAvailableExtensions();
         $availableAndInstalledExtensions = $this->listUtility->getAvailableAndInstalledExtensions($availableExtensions);
         $availableAndInstalledExtensions = $this->listUtility->enrichExtensionsWithEmConfAndTerInformation($availableAndInstalledExtensions);
         foreach ($availableAndInstalledExtensions as $entry) {
             /** @var $extension \TYPO3\CMS\Lang\Domain\Model\Extension */
             $extension = $this->objectManager->create('TYPO3\\CMS\\Lang\\Domain\\Model\\Extension', $entry['key'], $entry['title'], $this->getExtensionIconWithPath($entry));
             $extension->setVersionFromString($entry['version']);
             $this->extensions[$entry['key']] = $extension;
         }
         // Sort the list by extension key
         ksort($this->extensions);
     }
     return $this->extensions;
 }
コード例 #3
0
 /**
  * Shows list of extensions present in the system
  *
  * @return void
  */
 public function indexAction()
 {
     $availableExtensions = $this->listUtility->getAvailableExtensions();
     $availableAndInstalledExtensions = $this->listUtility->getAvailableAndInstalledExtensions($availableExtensions);
     $availableAndInstalledExtensions = $this->listUtility->enrichExtensionsWithEmConfAndTerInformation($availableAndInstalledExtensions);
     $this->view->assign('extensions', $availableAndInstalledExtensions);
     $this->handleTriggerArguments();
 }
コード例 #4
0
 /**
  * Shows extensions from TER
  * Either all extensions or depending on a search param
  *
  * @param string $search
  * @return void
  */
 public function terAction($search = '')
 {
     $search = trim($search);
     if (!empty($search)) {
         $extensions = $this->extensionRepository->findByTitleOrAuthorNameOrExtensionKey($search);
     } else {
         $extensions = $this->extensionRepository->findAll();
     }
     $availableAndInstalledExtensions = $this->listUtility->getAvailableAndInstalledExtensions($this->listUtility->getAvailableExtensions());
     $this->view->assign('extensions', $extensions)->assign('search', $search)->assign('availableAndInstalled', $availableAndInstalledExtensions);
 }
コード例 #5
0
 public function findInstalledExtensionsThatDependOnMe($extensionKey)
 {
     $availableExtensions = $this->listUtility->getAvailableExtensions();
     $availableAndInstalledExtensions = $this->listUtility->getAvailableAndInstalledExtensions($availableExtensions);
     $availableAndInstalledExtensions = $this->listUtility->enrichExtensionsWithEmConfAndTerInformation($availableAndInstalledExtensions);
     $dependentExtensions = array();
     foreach ($availableAndInstalledExtensions as $availableAndInstalledExtensionKey => $availableAndInstalledExtension) {
         if (isset($availableAndInstalledExtension['installed']) && $availableAndInstalledExtension['installed'] === TRUE) {
             if (is_array($availableAndInstalledExtension['constraints']) && is_array($availableAndInstalledExtension['constraints']['depends']) && array_key_exists($extensionKey, $availableAndInstalledExtension['constraints']['depends'])) {
                 $dependentExtensions[] = $availableAndInstalledExtensionKey;
             }
         }
     }
     return $dependentExtensions;
 }
コード例 #6
0
ファイル: ListUtilityTest.php プロジェクト: adrolli/TYPO3.CMS
 /**
  * @test
  * @dataProvider getAvailableAndInstalledExtensionsDataProvider
  * @param $availableExtensions
  * @param $expectedResult
  * @return void
  */
 public function getAvailableAndInstalledExtensionsTest($availableExtensions, $expectedResult)
 {
     $this->assertEquals($expectedResult, $this->subject->getAvailableAndInstalledExtensions($availableExtensions));
 }