Skip to content

Commit 47b8173

Browse files
committed
Use $group->getDisplayName() instead of just the GID for the display name of "group circles".
Fixes nextcloud#1296. Signed-off-by: Claus-Justus Heine <[email protected]>
1 parent c6eda32 commit 47b8173

File tree

2 files changed

+22
-6
lines changed

2 files changed

+22
-6
lines changed

lib/Service/FederatedUserService.php

+4-3
Original file line numberDiff line numberDiff line change
@@ -646,7 +646,7 @@ public function setOwnerAsCurrentUser(string $circleId): void {
646646
$probe = new CircleProbe();
647647
$probe->includeSystemCircles()
648648
->includePersonalCircles();
649-
649+
650650
$localCircle = $this->circleRequest->getCircle($circleId, null, $probe);
651651
if ($this->configService->isLocalInstance($localCircle->getInstance())) {
652652
$this->setCurrentUser($localCircle->getOwner());
@@ -1241,7 +1241,8 @@ public function getGroupCircle(string $groupId): Circle {
12411241
$member->setId($this->token(ManagedModel::ID_LENGTH))
12421242
->setCircleId($circle->getSingleId())
12431243
->setLevel(Member::LEVEL_OWNER)
1244-
->setStatus(Member::STATUS_MEMBER);
1244+
->setStatus(Member::STATUS_MEMBER)
1245+
->setDisplayName($group->getDisplayName());
12451246
$circle->setOwner($member)
12461247
->setInitiator($member);
12471248

@@ -1250,7 +1251,7 @@ public function getGroupCircle(string $groupId): Circle {
12501251
} catch (CircleNotFoundException $e) {
12511252
}
12521253

1253-
$circle->setDisplayName($groupId);
1254+
$circle->setDisplayName($group->getDisplayName());
12541255

12551256
$event = new FederatedEvent(CircleCreate::class);
12561257
$event->setCircle($circle);

lib/Service/MembersService.php

+18-3
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,8 @@
5656
use OCA\Circles\Model\GlobalScale\GSEvent;
5757
use OCP\IL10N;
5858
use OCP\IUserManager;
59+
use OCP\IGroupManager;
60+
use OCP\IGroup;
5961

6062
/**
6163
* Class MembersService
@@ -77,6 +79,9 @@ class MembersService {
7779
/** @var IUserManager */
7880
private $userManager;
7981

82+
/** @var IGroupManager */
83+
private $groupManager;
84+
8085
/** @var ConfigService */
8186
private $configService;
8287

@@ -113,6 +118,7 @@ class MembersService {
113118
* @param string $userId
114119
* @param IL10N $l10n
115120
* @param IUserManager $userManager
121+
* @param IGroupManager $groupManager
116122
* @param ConfigService $configService
117123
* @param DeprecatedCirclesRequest $circlesRequest
118124
* @param DeprecatedMembersRequest $membersRequest
@@ -125,7 +131,7 @@ class MembersService {
125131
* @param MiscService $miscService
126132
*/
127133
public function __construct(
128-
$userId, IL10N $l10n, IUserManager $userManager, ConfigService $configService,
134+
$userId, IL10N $l10n, IUserManager $userManager, IGroupManager $groupManager, ConfigService $configService,
129135
DeprecatedCirclesRequest $circlesRequest, DeprecatedMembersRequest $membersRequest,
130136
AccountsRequest $accountsRequest,
131137
FileSharesRequest $fileSharesRequest, TokensRequest $tokensRequest, EventsService $eventsService,
@@ -135,6 +141,7 @@ public function __construct(
135141
$this->userId = $userId;
136142
$this->l10n = $l10n;
137143
$this->userManager = $userManager;
144+
$this->groupManager = $groupManager;
138145
$this->configService = $configService;
139146
$this->circlesRequest = $circlesRequest;
140147
$this->membersRequest = $membersRequest;
@@ -421,8 +428,7 @@ private function verifyIdentContact(&$ident, $type) {
421428
* @throws Exception
422429
*/
423430
private function addGroupMembers(DeprecatedCircle $circle, $groupId): array {
424-
$group = OC::$server->getGroupManager()
425-
->get($groupId);
431+
$group = $this->groupManager->get($groupId);
426432
if ($group === null) {
427433
throw new GroupDoesNotExistException($this->l10n->t('This group does not exist'));
428434
}
@@ -651,6 +657,15 @@ public function updateCachedName(DeprecatedMember $member, bool $fresh = true) {
651657
$cachedName = $this->getUserDisplayName($member->getUserId(), $fresh);
652658
}
653659

660+
if ($member->getType() === DeprecatedMember::TYPE_GROUP) {
661+
$gid = $member->getUserId();
662+
/** @var IGroup $group */
663+
$group = $this->groupManager->get($gid);
664+
if ($group !== null) {
665+
$cachedName = $group->getDisplayName();
666+
}
667+
}
668+
654669
if ($member->getType() === DeprecatedMember::TYPE_CONTACT) {
655670
$cachedName = $this->miscService->getContactDisplayName($member->getUserId());
656671
}

0 commit comments

Comments
 (0)