2 namespace TYPO3\CMS\Backend\Backend\Avatar;
50 public function render(array $backendUser = null, $size = 32, $showIcon =
false)
52 if (!is_array($backendUser)) {
60 $icon =
'<span class="avatar-icon">' . $iconFactory->getIconForRecord(
'be_users', $backendUser,
Icon::SIZE_SMALL)->render() .
'</span>';
63 $image = $this->
getImgTag($backendUser, $size);
65 return '<span class="avatar"><span class="avatar-image">' . $image .
'</span>' . $icon .
'</span>';
75 public function getImgTag(array $backendUser = null, $size = 32)
77 if (!is_array($backendUser)) {
82 $avatarImage = $this->
getImage($backendUser, $size);
85 $imageTag =
'<img src="' . htmlspecialchars($avatarImage->getUrl(
true)) .
'" ' .
86 'width="' . (
int)$avatarImage->getWidth() .
'" ' .
87 'height="' . (int)$avatarImage->getHeight() .
'" />';
100 public function getImage(array $backendUser, $size)
102 foreach ($this->avatarProviders as $provider) {
103 $avatarImage = $provider->getImage($backendUser, $size);
104 if (!empty($avatarImage)) {
120 empty(
$GLOBALS[
'TYPO3_CONF_VARS'][
'EXTCONF'][
'backend'][
'avatarProviders'])
121 || !is_array(
$GLOBALS[
'TYPO3_CONF_VARS'][
'EXTCONF'][
'backend'][
'avatarProviders'])
125 $providers =
$GLOBALS[
'TYPO3_CONF_VARS'][
'EXTCONF'][
'backend'][
'avatarProviders'];
126 foreach ($providers as $identifier => $configuration) {
127 if (empty($configuration) || !is_array($configuration)) {
128 throw new \RuntimeException(
'Missing configuration for avatar provider "' . $identifier .
'".', 1439317801);
130 if (!is_string($configuration[
'provider']) || empty($configuration[
'provider']) || !class_exists($configuration[
'provider']) || !is_subclass_of($configuration[
'provider'], AvatarProviderInterface::class)) {
131 throw new \RuntimeException(
'The avatar provider "' . $identifier .
'" defines an invalid provider. Ensure the class exists and implements the "' . AvatarProviderInterface::class .
'".', 1439317802);
138 foreach ($orderedProviders as $configuration) {