From 4dbe681a462996ba1799a09b328b50645ef1c137 Mon Sep 17 00:00:00 2001 From: Anton Georgiev <anto.georgiev@gmail.com> Date: Wed, 11 Jul 2018 12:46:44 +0000 Subject: [PATCH] disable HTML5 waiting screen for guest approve --- .../imports/api/users/server/eventHandlers.js | 3 +- .../users/server/handlers/guestApproved.js | 29 ++++++++++++------- .../imports/ui/components/app/container.jsx | 7 +++-- 3 files changed, 24 insertions(+), 15 deletions(-) diff --git a/bigbluebutton-html5/imports/api/users/server/eventHandlers.js b/bigbluebutton-html5/imports/api/users/server/eventHandlers.js index 495c58eabd..5d9f55fb0e 100644 --- a/bigbluebutton-html5/imports/api/users/server/eventHandlers.js +++ b/bigbluebutton-html5/imports/api/users/server/eventHandlers.js @@ -17,6 +17,7 @@ RedisPubSub.on('ValidateAuthTokenRespMsg', handleValidateAuthToken); RedisPubSub.on('UserEmojiChangedEvtMsg', handleEmojiStatus); RedisPubSub.on('SyncGetUsersMeetingRespMsg', handleGetUsers); RedisPubSub.on('GuestsWaitingForApprovalEvtMsg', handleGuestsWaitingForApproval); -RedisPubSub.on('GuestApprovedEvtMsg', handleGuestApproved); +RedisPubSub.on('GuestsWaitingApprovedEvtMsg', handleGuestApproved); RedisPubSub.on('UserEjectedFromMeetingEvtMsg', handleUserEjected); RedisPubSub.on('UserRoleChangedEvtMsg', handleChangeRole); + diff --git a/bigbluebutton-html5/imports/api/users/server/handlers/guestApproved.js b/bigbluebutton-html5/imports/api/users/server/handlers/guestApproved.js index 7187c1bf17..6e62ab0342 100644 --- a/bigbluebutton-html5/imports/api/users/server/handlers/guestApproved.js +++ b/bigbluebutton-html5/imports/api/users/server/handlers/guestApproved.js @@ -5,23 +5,30 @@ import userJoin from '../methods/userJoin'; export default function handleGuestsWaitingForApproval({ header, body }, meetingId) { const { userId } = header; - const { approved, approvedBy } = body; + const { guests, approvedBy } = body; check(userId, String); check(meetingId, String); - check(approved, Boolean); check(approvedBy, String); - const selector = { - meetingId, - userId, - }; + return guests.forEach(item => { + const { guest, approved } = item; - const User = Users.findOne(selector); + check(approved, Boolean); + check(guest, String); - if (User && approved) { - userJoin(meetingId, userId, User.authToken); - } + const selector = { + meetingId, + userId: guest, + clientType: "HTML5", + }; - return setApprovedStatus(meetingId, userId, approved, approvedBy); + const User = Users.findOne(selector); + + if (User && approved) { + userJoin(meetingId, guest, User.authToken); + } + + setApprovedStatus(meetingId, guest, approved, approvedBy); + }) } diff --git a/bigbluebutton-html5/imports/ui/components/app/container.jsx b/bigbluebutton-html5/imports/ui/components/app/container.jsx index 8548d1969a..0e2c531473 100644 --- a/bigbluebutton-html5/imports/ui/components/app/container.jsx +++ b/bigbluebutton-html5/imports/ui/components/app/container.jsx @@ -69,9 +69,10 @@ export default withRouter(injectIntl(withModalMounter(withTracker(({ router, int const currentUser = Users.findOne({ userId: Auth.userID }); const isMeetingBreakout = meetingIsBreakout(); - if (!currentUser.approved) { - baseControls.updateLoadingState(intl.formatMessage(intlMessages.waitingApprovalMessage)); - } + // TODO re-enable to show loading screen while waiting for guest approval + // if (!currentUser.approved) { + // baseControls.updateLoadingState(intl.formatMessage(intlMessages.waitingApprovalMessage)); + // } // Check if user is removed out of the session Users.find({ userId: Auth.userID }).observeChanges({ -- GitLab