/** * Stub: Get the package name of the controller associated with $row * * @param array $row * @return string */ public function getControllerPackageNameFromRecord(array $row) { $extensionKey = $this->getControllerExtensionKeyFromRecord($row); $extensionName = ExtensionNamingUtility::getExtensionName($extensionKey); $vendor = ExtensionNamingUtility::getVendorName($extensionKey); return NULL !== $vendor ? $vendor . '.' . $extensionName : $extensionName; }
/** * @test */ public function testGetVendorNameWithVendorName() { $result = ExtensionNamingUtility::getVendorName('FT3.FooExt'); $this->assertSame('FT3', $result); }
/** * Must always return the vendor name (as used in class * namespaces) corresponding to this package. * * @return string */ public function getVendorName() { return ExtensionNamingUtility::getVendorName($this->manifest['package']); }
/** * @param string $qualifiedExtensionName * @param string $controllerName * @param array $paths * @param array $variables * @return ExposedTemplateView */ public function getPreparedExposedTemplateView($qualifiedExtensionName = NULL, $controllerName = NULL, $paths = array(), $variables = array()) { $qualifiedExtensionName = GeneralUtility::camelCaseToLowerCaseUnderscored($qualifiedExtensionName); $extensionKey = ExtensionNamingUtility::getExtensionKey($qualifiedExtensionName); $vendorName = ExtensionNamingUtility::getVendorName($qualifiedExtensionName); if (NULL === $qualifiedExtensionName || FALSE === ExtensionManagementUtility::isLoaded($extensionKey)) { // Note here: a default value of the argument would not be adequate; outside callers could still pass NULL. $qualifiedExtensionName = 'Flux'; } $extensionName = ExtensionNamingUtility::getExtensionName($qualifiedExtensionName); if (NULL === $controllerName) { $controllerName = 'Flux'; } /** @var $context ControllerContext */ $context = $this->objectManager->get('TYPO3\\CMS\\Extbase\\Mvc\\Controller\\ControllerContext'); /** @var $request Request */ $request = $this->objectManager->get('TYPO3\\CMS\\Extbase\\Mvc\\Web\\Request'); /** @var $response Responsee */ $response = $this->objectManager->get('TYPO3\\CMS\\Extbase\\Mvc\\Web\\Response'); $request->setControllerExtensionName($extensionName); $request->setControllerName($controllerName); $request->setControllerVendorName($vendorName); $request->setDispatched(TRUE); /** @var $uriBuilder UriBuilder */ $uriBuilder = $this->objectManager->get('TYPO3\\CMS\\Extbase\\Mvc\\Web\\Routing\\UriBuilder'); $uriBuilder->setRequest($request); $context->setUriBuilder($uriBuilder); $context->setRequest($request); $context->setResponse($response); /** @var $exposedView ExposedTemplateView */ $exposedView = $this->objectManager->get('FluidTYPO3\\Flux\\View\\ExposedTemplateView'); $exposedView->setControllerContext($context); if (0 < count($variables)) { $exposedView->assignMultiple($variables); } if (TRUE === isset($paths['layoutRootPath']) && FALSE === empty($paths['layoutRootPath'])) { $exposedView->setLayoutRootPath($paths['layoutRootPath']); } if (TRUE === isset($paths['partialRootPath']) && FALSE === empty($paths['partialRootPath'])) { $exposedView->setPartialRootPath($paths['partialRootPath']); } if (TRUE === isset($paths['templateRootPath']) && FALSE === empty($paths['templateRootPath'])) { $exposedView->setTemplateRootPath($paths['templateRootPath']); } return $exposedView; }
/** * @return string */ public function getVendorName() { return ExtensionNamingUtility::getVendorName($this->packageName); }