diff --git a/lib/Chat/Parser/SystemMessage.php b/lib/Chat/Parser/SystemMessage.php index 645e0e14765..84185708f45 100644 --- a/lib/Chat/Parser/SystemMessage.php +++ b/lib/Chat/Parser/SystemMessage.php @@ -368,6 +368,11 @@ protected function parseMessage(Message $chatMessage): void { if ($parsedParameters['federated_user']['id'] === $parsedParameters['actor']['id']) { $parsedMessage = $this->l->t('You accepted the invitation'); } + } elseif ($this->isCurrentParticipantChangedUser($currentActorType, $currentActorId, $parsedParameters['federated_user'])) { + $parsedMessage = $this->l->t('{actor} invited you'); + if ($cliIsActor) { + $parsedMessage = $this->l->t('An administrator invited you'); + } } elseif ($cliIsActor) { $parsedMessage = $this->l->t('An administrator invited {federated_user}'); } elseif ($parsedParameters['federated_user']['id'] === $parsedParameters['actor']['id']) { @@ -378,6 +383,11 @@ protected function parseMessage(Message $chatMessage): void { $parsedMessage = $this->l->t('{actor} removed {federated_user}'); if ($currentUserIsActor) { $parsedMessage = $this->l->t('You removed {federated_user}'); + } elseif ($this->isCurrentParticipantChangedUser($currentActorType, $currentActorId, $parsedParameters['federated_user'])) { + $parsedMessage = $this->l->t('{actor} removed you'); + if ($cliIsActor) { + $parsedMessage = $this->l->t('An administrator removed you'); + } } elseif ($cliIsActor) { $parsedMessage = $this->l->t('An administrator removed {federated_user}'); } elseif ($parsedParameters['federated_user']['id'] === $parsedParameters['actor']['id']) { diff --git a/lib/Federation/Proxy/TalkV1/ProxyRequest.php b/lib/Federation/Proxy/TalkV1/ProxyRequest.php index 548553867cb..ca21dabea7a 100644 --- a/lib/Federation/Proxy/TalkV1/ProxyRequest.php +++ b/lib/Federation/Proxy/TalkV1/ProxyRequest.php @@ -35,6 +35,8 @@ use OCP\Http\Client\IClientService; use OCP\Http\Client\IResponse; use OCP\IConfig; +use OCP\IUserSession; +use OCP\L10N\IFactory; use Psr\Log\LoggerInterface; use SensitiveParameter; @@ -43,6 +45,8 @@ public function __construct( protected IConfig $config, protected IClientService $clientService, protected LoggerInterface $logger, + protected IFactory $l10nFactory, + protected IUserSession $userSession, ) { } @@ -72,6 +76,7 @@ protected function generateDefaultRequestOptions( 'Accept' => 'application/json', 'X-Nextcloud-Federation' => 'true', 'OCS-APIRequest' => 'true', + 'Accept-Language' => $this->l10nFactory->getUserLanguage($this->userSession->getUser()), ], 'timeout' => 5, ];