mirror of
https://github.com/netzbegruenung/circles.git
synced 2024-05-14 09:06:06 +02:00
update displayName
Signed-off-by: Maxence Lange <maxence@artificial-owl.com>
This commit is contained in:
parent
f8f2008be8
commit
627b4f62f3
|
@ -33,6 +33,7 @@ namespace OCA\Circles\FederatedItems;
|
|||
|
||||
use OCA\Circles\Tools\Traits\TDeserialize;
|
||||
use OCA\Circles\Db\CircleRequest;
|
||||
use OCA\Circles\Db\MemberRequest;
|
||||
use OCA\Circles\Exceptions\CircleNameTooShortException;
|
||||
use OCA\Circles\Exceptions\RequestBuilderException;
|
||||
use OCA\Circles\IFederatedItem;
|
||||
|
@ -53,6 +54,9 @@ class CircleEdit implements IFederatedItem {
|
|||
/** @var CircleRequest */
|
||||
private $circleRequest;
|
||||
|
||||
/** @var MemberRequest */
|
||||
private $memberRequest;
|
||||
|
||||
/** @var CircleService */
|
||||
private $circleService;
|
||||
|
||||
|
@ -64,15 +68,18 @@ class CircleEdit implements IFederatedItem {
|
|||
* CircleEdit constructor.
|
||||
*
|
||||
* @param CircleRequest $circleRequest
|
||||
* @param MemberRequest $memberRequest
|
||||
* @param CircleService $circleService
|
||||
* @param EventService $eventService
|
||||
*/
|
||||
public function __construct(
|
||||
CircleRequest $circleRequest,
|
||||
MemberRequest $memberRequest,
|
||||
CircleService $circleService,
|
||||
EventService $eventService
|
||||
) {
|
||||
$this->circleRequest = $circleRequest;
|
||||
$this->memberRequest = $memberRequest;
|
||||
$this->circleService = $circleService;
|
||||
$this->eventService = $eventService;
|
||||
}
|
||||
|
@ -134,6 +141,7 @@ class CircleEdit implements IFederatedItem {
|
|||
}
|
||||
|
||||
$this->circleRequest->edit($circle);
|
||||
$this->memberRequest->updateDisplayName($circle->getSingleId(), $circle->getDisplayName());
|
||||
$this->eventService->circleEditing($event);
|
||||
}
|
||||
|
||||
|
|
|
@ -119,6 +119,11 @@ class DeprecatedListener {
|
|||
$circles = $this->circleService->getCircles($probe);
|
||||
|
||||
foreach ($circles as $circle) {
|
||||
// we are only interested in direct membership
|
||||
if ($circle->getInitiator()->getSingleId() !== $federatedUser->getSingleId()) {
|
||||
continue;
|
||||
}
|
||||
|
||||
$event = new FederatedEvent(MemberDisplayName::class);
|
||||
$event->setCircle($circle);
|
||||
$event->getParams()->s('displayName', $user->getDisplayName());
|
||||
|
|
|
@ -43,6 +43,7 @@ use OCA\Circles\Model\Member;
|
|||
use OCA\Circles\Model\Probes\CircleProbe;
|
||||
use OCA\Circles\Model\ShareWrapper;
|
||||
use OCA\Circles\Tools\Traits\TNCLogger;
|
||||
use OCP\IGroupManager;
|
||||
use OCP\IUserManager;
|
||||
use Symfony\Component\Console\Output\OutputInterface;
|
||||
|
||||
|
@ -61,6 +62,9 @@ class MaintenanceService {
|
|||
/** @var IUserManager */
|
||||
private $userManager;
|
||||
|
||||
/** @var IGroupManager */
|
||||
private $groupManager;
|
||||
|
||||
/** @var CircleRequest */
|
||||
private $circleRequest;
|
||||
|
||||
|
@ -109,6 +113,7 @@ class MaintenanceService {
|
|||
*/
|
||||
public function __construct(
|
||||
IUserManager $userManager,
|
||||
IGroupManager $groupManager,
|
||||
CircleRequest $circleRequest,
|
||||
MemberRequest $memberRequest,
|
||||
ShareWrapperRequest $shareWrapperRequest,
|
||||
|
@ -120,6 +125,7 @@ class MaintenanceService {
|
|||
ConfigService $configService
|
||||
) {
|
||||
$this->userManager = $userManager;
|
||||
$this->groupManager = $groupManager;
|
||||
$this->circleRequest = $circleRequest;
|
||||
$this->memberRequest = $memberRequest;
|
||||
$this->shareWrapperRequest = $shareWrapperRequest;
|
||||
|
@ -272,8 +278,6 @@ class MaintenanceService {
|
|||
|
||||
// try {
|
||||
// $this->output('refresh displayNames older than 7d');
|
||||
// // $this->refreshOldDisplayNames();
|
||||
// $this->output('refresh DisplayNames');
|
||||
// $this->refreshDisplayName();
|
||||
// } catch (Exception $e) {
|
||||
// }
|
||||
|
@ -284,6 +288,13 @@ class MaintenanceService {
|
|||
$this->removeOrphanShares();
|
||||
} catch (Exception $e) {
|
||||
}
|
||||
|
||||
try {
|
||||
// Can be removed in NC27.
|
||||
$this->output('fix sub-circle display name');
|
||||
$this->fixSubCirclesDisplayName();
|
||||
} catch (Exception $e) {
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
@ -389,6 +400,10 @@ class MaintenanceService {
|
|||
|
||||
foreach ($circles as $circle) {
|
||||
$owner = $circle->getOwner();
|
||||
if ($owner->getDisplayUpdate() > (time() - 604800)) {
|
||||
continue;
|
||||
}
|
||||
|
||||
if ($owner->getUserType() === Member::TYPE_USER) {
|
||||
$user = $this->userManager->get($owner->getUserId());
|
||||
$this->memberRequest->updateDisplayName($owner->getSingleId(), $user->getDisplayName());
|
||||
|
@ -397,6 +412,23 @@ class MaintenanceService {
|
|||
}
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* @throws RequestBuilderException
|
||||
* @throws InitiatorNotFoundException
|
||||
*/
|
||||
private function fixSubCirclesDisplayName(): void {
|
||||
$probe = new CircleProbe();
|
||||
$probe->includeSingleCircles();
|
||||
|
||||
$circles = $this->circleService->getCircles($probe);
|
||||
|
||||
foreach ($circles as $circle) {
|
||||
$this->memberRequest->updateDisplayName($circle->getSingleId(), $circle->getDisplayName());
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* @param string $message
|
||||
*/
|
||||
|
|
Loading…
Reference in a new issue