diff --git a/lib/private/Contacts/ContactsMenu/ContactsStore.php b/lib/private/Contacts/ContactsMenu/ContactsStore.php index a0a14cd9cbd0e..3a75e924d24f0 100644 --- a/lib/private/Contacts/ContactsMenu/ContactsStore.php +++ b/lib/private/Contacts/ContactsMenu/ContactsStore.php @@ -287,7 +287,13 @@ private function contactArrayToEntry(array $contact): Entry { if (isset($contact['UID'])) { $uid = $contact['UID']; $entry->setId($uid); - $avatar = $this->urlGenerator->linkToRouteAbsolute('core.avatar.getAvatar', ['userId' => $uid, 'size' => 64]); + if (isset($contact['isLocalSystemBook'])) { + $avatar = $this->urlGenerator->linkToRouteAbsolute('core.avatar.getAvatar', ['userId' => $uid, 'size' => 64]); + } elseif (isset($contact['FN'])) { + $avatar = $this->urlGenerator->linkToRouteAbsolute('core.GuestAvatar.getAvatar', ['guestName' => $contact['FN'], 'size' => 64]); + } else { + $avatar = $this->urlGenerator->linkToRouteAbsolute('core.GuestAvatar.getAvatar', ['guestName' => $uid, 'size' => 64]); + } $entry->setAvatar($avatar); } diff --git a/tests/lib/Contacts/ContactsMenu/ContactsStoreTest.php b/tests/lib/Contacts/ContactsMenu/ContactsStoreTest.php index dfdd67fbb2329..aab28eb22b287 100644 --- a/tests/lib/Contacts/ContactsMenu/ContactsStoreTest.php +++ b/tests/lib/Contacts/ContactsMenu/ContactsStoreTest.php @@ -142,7 +142,7 @@ public function testGetContactsWithoutBinaryImage() { $user = $this->createMock(IUser::class); $this->urlGenerator->expects($this->any()) ->method('linkToRouteAbsolute') - ->with('core.avatar.getAvatar', $this->anything()) + ->with('core.GuestAvatar.getAvatar', $this->anything()) ->willReturn('https://urlToNcAvatar.test'); $this->contactsManager->expects($this->once()) ->method('search')