Skip to content

Commit 3c57894

Browse files
kesselbbackportbot[bot]
authored andcommitted
feat: dismiss notification when accepting an invitation
Signed-off-by: Daniel Kesselberg <[email protected]> [skip ci]
1 parent eded50b commit 3c57894

2 files changed

Lines changed: 17 additions & 1 deletion

File tree

lib/Listeners/Notifications/RequestingMember.php

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -69,14 +69,16 @@ public function __construct(NotificationService $notificationService) {
6969
* @throws RequestBuilderException
7070
*/
7171
public function handle(Event $event): void {
72-
if (!$event instanceof RequestingCircleMemberEvent) {
72+
if (!$event instanceof RequestingCircleMemberEvent && !$event instanceof AddingCircleMemberEvent) {
7373
return;
7474
}
7575

7676
$member = $event->getMember();
7777

7878
if ($event->getType() === CircleGenericEvent::REQUESTED) {
7979
$this->notificationService->notificationRequested($member);
80+
} elseif ($event->getType() === CircleGenericEvent::JOINED && $event->getCircle()->isConfig(Circle::CFG_INVITE)) {
81+
$this->notificationService->markInvitationAsProcessed($member);
8082
} else {
8183
$this->notificationService->notificationInvited($member);
8284
}

lib/Service/NotificationService.php

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -228,4 +228,18 @@ private function linkToOCS(string $route, array $params = []): string {
228228

229229
return parse_url($absolute, PHP_URL_PATH);
230230
}
231+
232+
public function markInvitationAsProcessed(Member $member): void {
233+
if ($member->getUserType() !== Member::TYPE_USER || !$member->isLocal()) {
234+
return;
235+
}
236+
237+
$notification = $this->notificationManager->createNotification();
238+
$notification->setApp('circles')
239+
->setUser($member->getUserId())
240+
->setObject('member', $member->getId())
241+
->setSubject('invitation');
242+
243+
$this->notificationManager->markProcessed($notification);
244+
}
231245
}

0 commit comments

Comments
 (0)