diff --git a/lib/Chat/SystemMessage/Listener.php b/lib/Chat/SystemMessage/Listener.php index a026724284..bbfa7a73d4 100644 --- a/lib/Chat/SystemMessage/Listener.php +++ b/lib/Chat/SystemMessage/Listener.php @@ -13,6 +13,7 @@ use OCA\Talk\Chat\ChatManager; use OCA\Talk\Chat\MessageParser; use OCA\Talk\Events\AAttendeeRemovedEvent; use OCA\Talk\Events\AParticipantModifiedEvent; +use OCA\Talk\Events\ARoomEvent; use OCA\Talk\Events\ARoomModifiedEvent; use OCA\Talk\Events\AttendeeRemovedEvent; use OCA\Talk\Events\AttendeesAddedEvent; @@ -70,6 +71,10 @@ class Listener implements IEventListener { } public function handle(Event $event): void { + if ($event instanceof ARoomEvent && $event->getRoom()->isFederatedConversation()) { + return; + } + if ($event instanceof AttendeesAddedEvent) { $this->attendeesAddedEvent($event); } elseif ($event instanceof AttendeeRemovedEvent) { @@ -150,10 +155,6 @@ class Listener implements IEventListener { } protected function sendSystemMessageAboutConversationCreated(RoomCreatedEvent $event): void { - if ($event->getRoom()->isFederatedConversation()) { - return; - } - if ($event->getRoom()->getType() === Room::TYPE_CHANGELOG || $this->isCreatingNoteToSelfAutomatically($event)) { $this->sendSystemMessage($event->getRoom(), 'conversation_created', forceSystemAsActor: true); } else { @@ -167,11 +168,6 @@ class Listener implements IEventListener { return; } - if ($event->getRoom()->isFederatedConversation()) { - return; - } - - $this->sendSystemMessage($event->getRoom(), 'conversation_renamed', [ 'newName' => $event->getNewValue(), 'oldName' => $event->getOldValue(), @@ -179,10 +175,6 @@ class Listener implements IEventListener { } protected function sendSystemMessageAboutRoomDescriptionChanges(RoomModifiedEvent $event): void { - if ($event->getRoom()->isFederatedConversation()) { - return; - } - if ($event->getNewValue() !== '') { if ($this->isCreatingNoteToSelf($event)) { return; @@ -197,10 +189,6 @@ class Listener implements IEventListener { } protected function sendSystemMessageAboutRoomPassword(RoomModifiedEvent $event): void { - if ($event->getRoom()->isFederatedConversation()) { - return; - } - if ($event->getNewValue() !== '') { $this->sendSystemMessage($event->getRoom(), 'password_set'); } else { @@ -227,10 +215,6 @@ class Listener implements IEventListener { return; } - if ($room->isFederatedConversation()) { - return; - } - if ($event->getNewValue() === Room::READ_ONLY) { $this->sendSystemMessage($room, 'read_only'); } elseif ($event->getNewValue() === Room::READ_WRITE) { @@ -279,10 +263,6 @@ class Listener implements IEventListener { return; } - if ($room->isFederatedConversation()) { - return; - } - $userJoinedFileRoom = $room->getObjectType() === Room::OBJECT_TYPE_FILE && $attendee->getParticipantType() !== Participant::USER_SELF_JOINED; // add a message "X joined the conversation", whenever user $userId: @@ -317,10 +297,6 @@ class Listener implements IEventListener { return; } - if ($room->isFederatedConversation()) { - return; - } - if ($event->getReason() === AAttendeeRemovedEvent::REASON_LEFT && $event->getAttendee()->getParticipantType() === Participant::USER_SELF_JOINED) { // Self-joined user closes the tab/window or leaves via the menu @@ -339,10 +315,6 @@ class Listener implements IEventListener { return; } - if ($event->getRoom()->isFederatedConversation()) { - return; - } - if ($event->getNewValue() === Participant::MODERATOR) { $this->sendSystemMessage($room, 'moderator_promoted', ['user' => $attendee->getActorId()]); } elseif ($event->getNewValue() === Participant::USER) { @@ -388,9 +360,6 @@ class Listener implements IEventListener { return; } $room = $this->manager->getRoomByToken($share->getSharedWith()); - if ($room->isFederatedConversation()) { - return; - } $metaData = $this->request->getParam('talkMetaData') ?? ''; $metaData = json_decode($metaData, true); @@ -422,10 +391,6 @@ class Listener implements IEventListener { } protected function attendeesAddedEvent(AttendeesAddedEvent $event): void { - if ($event->getRoom()->isFederatedConversation()) { - return; - } - foreach ($event->getAttendees() as $attendee) { $this->logger->debug($attendee->getActorType() . ' "' . $attendee->getActorId() . '" added to room "' . $event->getRoom()->getToken() . '"', ['app' => 'spreed-bfp']); if ($attendee->getActorType() === Attendee::ACTOR_GROUPS) { @@ -443,10 +408,6 @@ class Listener implements IEventListener { } protected function attendeesRemovedEvent(AttendeesRemovedEvent $event): void { - if ($event->getRoom()->isFederatedConversation()) { - return; - } - foreach ($event->getAttendees() as $attendee) { $this->logger->debug($attendee->getActorType() . ' "' . $attendee->getActorId() . '" removed from room "' . $event->getRoom()->getToken() . '"', ['app' => 'spreed-bfp']); if ($attendee->getActorType() === Attendee::ACTOR_GROUPS) {