registerArgument('uid', 'int', 'Uid of the user', true); } /** * Resolve user name from backend user id. * * @param array $arguments * @param \Closure $renderChildrenClosure * @param RenderingContextInterface $renderingContext * * @return string Username or an empty string if there is no user with that UID */ public static function renderStatic(array $arguments, \Closure $renderChildrenClosure, RenderingContextInterface $renderingContext) { $uid = $arguments['uid']; if (isset(static::$usernameRuntimeCache[$uid])) { return static::$usernameRuntimeCache[$uid]; } $objectManager = GeneralUtility::makeInstance(ObjectManager::class); $backendUserRepository = $objectManager->get(BackendUserRepository::class); /** @var \TYPO3\CMS\Extbase\Domain\Model\BackendUser $user */ $user = $backendUserRepository->findByUid($uid); // $user may be NULL if user was deleted from DB, set it to empty string to always return a string static::$usernameRuntimeCache[$uid] = $user === null ? '' : $user->getUserName(); return static::$usernameRuntimeCache[$uid]; } }