Browse Source
Only delete guests without a PIN
Signed-off-by: Joas Schilling <coding@schilljs.com>
pull/4496/head
Joas Schilling
5 years ago
No known key found for this signature in database
GPG Key ID: 7076EA9751AACDDA
1 changed files with
8 additions and
6 deletions
-
lib/Controller/SignalingController.php
|
|
|
@ -606,12 +606,14 @@ class SignalingController extends OCSController { |
|
|
|
$this->sessionService->updateLastPing($participant->getSession(), $this->timeFactory->getTime()); |
|
|
|
} |
|
|
|
} elseif ($action === 'leave') { |
|
|
|
if ($participant instanceof Participant) { |
|
|
|
if (!empty($userId)) { |
|
|
|
$this->participantService->leaveRoomAsSession($room, $participant); |
|
|
|
} else { |
|
|
|
$this->participantService->removeAttendee($room, $participant, Room::PARTICIPANT_LEFT); |
|
|
|
} |
|
|
|
// Guests are removed completely as they don't reuse attendees,
|
|
|
|
// but this is only true for guests that joined directly.
|
|
|
|
// Emails are retained as their PIN needs to remain and stay
|
|
|
|
// valid.
|
|
|
|
if ($participant->getAttendee()->getActorType() === Attendee::ACTOR_GUESTS) { |
|
|
|
$this->participantService->removeAttendee($room, $participant, Room::PARTICIPANT_LEFT); |
|
|
|
} else { |
|
|
|
$this->participantService->leaveRoomAsSession($room, $participant); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|