diff --git a/lib/Controller/JsController.php b/lib/Controller/JsController.php
index 1bfba35..ecd27d5 100644
--- a/lib/Controller/JsController.php
+++ b/lib/Controller/JsController.php
@@ -55,6 +55,8 @@ class JsController extends Controller
$user = OC::$server[IUserSession::class]->getUser();
$topMenuApps = (array) json_decode($this->config->getAppValue('side_menu', 'top-menu-apps', '[]'), true);
$targetBlankApps = (array) json_decode($this->config->getAppValue('side_menu', 'target-blank-apps', '[]'), true);
+ $useAvatar = (bool) $this->config->getAppValue('side_menu', 'use-avatar', '0');
+ $avatar = null;
if ($user) {
$userTopMenuApps = (array) json_decode($this->config->getUserValue($user->getUid(), 'side_menu', 'top-menu-apps', '[]'), true);
@@ -69,6 +71,18 @@ class JsController extends Controller
if ($userTargetBlankMode === 2) {
$targetBlankApps = $userTargetBlankApps;
}
+
+ $isAvatarSet = OC::$server->getAvatarManager()->getAvatar($user->getUid())->exists();
+
+ if ($useAvatar && $isAvatarSet) {
+ $avatar = OC::$server->getURLGenerator()->linkToRoute(
+ 'core.avatar.getAvatar', [
+ 'userId' => $user->getUid(),
+ 'size' => 128,
+ 'v' => $this->config->getUserValue($user, 'avatar', 'version', 0),
+ ]
+ );
+ }
}
@@ -81,6 +95,7 @@ class JsController extends Controller
'loader-enabled' => (bool) $this->config->getAppValue('side_menu', 'loader-enabled', '1'),
'always-displayed' => (bool) $this->config->getAppValue('side_menu', 'always-displayed', '0'),
'big-menu' => (bool) $this->config->getAppValue('side_menu', 'big-menu', '0'),
+ 'avatar' => $avatar,
'top-menu-apps' => $topMenuApps,
'target-blank-apps' => $targetBlankApps,
];
diff --git a/lib/Settings/Admin.php b/lib/Settings/Admin.php
index 9a901e4..409b389 100644
--- a/lib/Settings/Admin.php
+++ b/lib/Settings/Admin.php
@@ -77,6 +77,7 @@ class Admin implements ISettings
'always-displayed' => $this->config->getAppValue('side_menu', 'always-displayed', '0'),
'big-menu' => $this->config->getAppValue('side_menu', 'big-menu', '0'),
'display-logo' => $this->config->getAppValue('side_menu', 'display-logo', '1'),
+ 'use-avatar' => $this->config->getAppValue('side_menu', 'use-avatar', '0'),
'opener-position' => $this->config->getAppValue('side_menu', 'opener-position', 'before'),
'opener-hover' => $this->config->getAppValue('side_menu', 'opener-hover', '0'),
'opener-only' => $this->config->getAppValue('side_menu', 'opener-only', '0'),
diff --git a/src/SideMenu.vue b/src/SideMenu.vue
index 5917e78..746e131 100644
--- a/src/SideMenu.vue
+++ b/src/SideMenu.vue
@@ -19,7 +19,7 @@ along with this program. If not, see
t('Use the avatar instead of the logo')); ?>
+ +