@@ -256,10 +301,9 @@ class LockViewersComponent extends React.PureComponent {
{
- meeting.lockSettingsProps.hideUserList = !meeting.lockSettingsProps.hideUserList;
- toggleLockSettings(meeting);
+ this.toggleLockSettings('hideUserList');
}}
ariaLabel={intl.formatMessage(intlMessages.userListLabel)}
/>
@@ -268,9 +312,28 @@ class LockViewersComponent extends React.PureComponent {
+
+
+
+
+
);
}
}
+LockViewersComponent.propTypes = propTypes;
+
export default injectIntl(LockViewersComponent);
diff --git a/bigbluebutton-html5/imports/ui/components/lock-viewers/container.jsx b/bigbluebutton-html5/imports/ui/components/lock-viewers/container.jsx
index 674b5b5616..43e12525ad 100755
--- a/bigbluebutton-html5/imports/ui/components/lock-viewers/container.jsx
+++ b/bigbluebutton-html5/imports/ui/components/lock-viewers/container.jsx
@@ -1,22 +1,16 @@
import React from 'react';
import { withTracker } from 'meteor/react-meteor-data';
import { withModalMounter } from '/imports/ui/components/modal/service';
-import { makeCall } from '/imports/ui/services/api';
import Meetings from '/imports/api/meetings';
import Auth from '/imports/ui/services/auth';
import LockViewersComponent from './component';
+import { updateLockSettings, updateWebcamsOnlyForModerator } from './service';
const LockViewersContainer = props =>
;
export default withModalMounter(withTracker(({ mountModal }) => ({
- closeModal() {
- mountModal(null);
- },
- toggleLockSettings(meeting) {
- makeCall('toggleLockSettings', meeting);
- },
- toggleWebcamsOnlyForModerator(meeting) {
- makeCall('toggleWebcamsOnlyForModerator', meeting);
- },
+ closeModal: () => mountModal(null),
meeting: Meetings.findOne({ meetingId: Auth.meetingID }),
+ updateLockSettings,
+ updateWebcamsOnlyForModerator,
}))(LockViewersContainer));
diff --git a/bigbluebutton-html5/imports/ui/components/lock-viewers/service.js b/bigbluebutton-html5/imports/ui/components/lock-viewers/service.js
index 2f9ae0d30c..6126d27d11 100644
--- a/bigbluebutton-html5/imports/ui/components/lock-viewers/service.js
+++ b/bigbluebutton-html5/imports/ui/components/lock-viewers/service.js
@@ -1,14 +1,10 @@
import { makeCall } from '/imports/ui/services/api';
-import Meetings from '/imports/api/meetings';
-import Auth from '/imports/ui/services/auth';
-const getCurrentMeeting = () => Meetings.findOne({ meetingId: Auth.meetingID });
+const updateLockSettings = lockProps => makeCall('toggleLockSettings', lockProps);
-const toggleLockSettings = () => makeCall('toggleLockSettings', getCurrentMeeting());
+const updateWebcamsOnlyForModerator = webcamsOnlyForModerator => makeCall('toggleWebcamsOnlyForModerator', webcamsOnlyForModerator);
-const toggleWebcamsOnlyForModerator = () => makeCall('toggleWebcamsOnlyForModerator', getCurrentMeeting());
-
-export default {
- toggleLockSettings,
- toggleWebcamsOnlyForModerator,
+export {
+ updateLockSettings,
+ updateWebcamsOnlyForModerator,
};
diff --git a/bigbluebutton-html5/imports/ui/components/lock-viewers/styles.scss b/bigbluebutton-html5/imports/ui/components/lock-viewers/styles.scss
index 04eed241c2..4be57e9f43 100755
--- a/bigbluebutton-html5/imports/ui/components/lock-viewers/styles.scss
+++ b/bigbluebutton-html5/imports/ui/components/lock-viewers/styles.scss
@@ -25,6 +25,7 @@
.form {
display: flex;
flex-flow: column;
+ border-bottom: 1px solid var(--color-gray-lighter);
}
.container {
@@ -132,3 +133,29 @@
line-height: var(--title-position-left);
margin-bottom: var(--lg-padding-y);
}
+
+.footer {
+ display: flex;
+ margin-top: var(--sm-padding-x);
+}
+
+.actions {
+ margin-left: auto;
+ margin-right: 3px;
+
+
+ [dir="rtl"] & {
+ margin-right: auto;
+ margin-left: 3px;
+ }
+
+ :first-child {
+ margin-right: 3px;
+ margin-left: inherit;
+
+ [dir="rtl"] & {
+ margin-right: inherit;
+ margin-left: 3px;
+ }
+ }
+}
diff --git a/bigbluebutton-html5/private/locales/en.json b/bigbluebutton-html5/private/locales/en.json
index 990a2caea2..fbde1ca5f9 100755
--- a/bigbluebutton-html5/private/locales/en.json
+++ b/bigbluebutton-html5/private/locales/en.json
@@ -91,7 +91,7 @@
"app.userList.userOptions.muteAllExceptPresenterDesc": "Mutes all users in the meeting except the presenter",
"app.userList.userOptions.unmuteAllLabel": "Turn off meeting mute",
"app.userList.userOptions.unmuteAllDesc": "Unmutes the meeting",
- "app.userList.userOptions.lockViewersLabel": "Lock viewers",
+ "app.userList.userOptions.lockViewersLabel": "Lock Viewers Settings",
"app.userList.userOptions.lockViewersDesc": "Lock certain functionalities for attendees of the meeting",
"app.userList.userOptions.disableCam": "Viewers' webcams are disabled",
"app.userList.userOptions.disableMic": "Viewers' microphones are disabled",
@@ -495,19 +495,20 @@
"app.shortcut-help.togglePan": "Activate Pan tool (Presenter)",
"app.shortcut-help.nextSlideDesc": "Next slide (Presenter)",
"app.shortcut-help.previousSlideDesc": "Previous slide (Presenter)",
- "app.lock-viewers.title": "Lock viewers",
+ "app.lock-viewers.title": "Lock Viewers Settings",
"app.lock-viewers.description": "These options enable you to restrict viewers from using specific features. (These lock settings do not apply to moderators.)",
"app.lock-viewers.featuresLable": "Feature",
"app.lock-viewers.lockStatusLabel": "Locked status",
- "app.lock-viewers.webcamLabel": "Webcam",
- "app.lock-viewers.otherViewersWebcamLabel": "See other viewers webcams",
- "app.lock-viewers.microphoneLable": "Microphone",
- "app.lock-viewers.PublicChatLabel": "Public chat",
- "app.lock-viewers.PrivateChatLable": "Private chat",
- "app.lock-viewers.notesLabel": "Shared notes",
- "app.lock-viewers.userListLabel": "User list",
- "app.lock-viewers.Layout": "Layout",
- "app.lock-viewers.ariaTitle": "Lock viewers modal",
+ "app.lock-viewers.webcamLabel": "Disable viewers webcam",
+ "app.lock-viewers.otherViewersWebcamLabel": "Seeing other viewers webcams",
+ "app.lock-viewers.microphoneLable": "Microphone capabilities",
+ "app.lock-viewers.PublicChatLabel": "Sending Public chat messages",
+ "app.lock-viewers.PrivateChatLable": "Sending Private chat messages",
+ "app.lock-viewers.notesLabel": "Using Shared notes",
+ "app.lock-viewers.userListLabel": "See other viewers in the user's list",
+ "app.lock-viewers.ariaTitle": "Lock viewers settings modal",
+ "app.lock-viewers.button.apply": "Apply",
+ "app.lock-viewers.button.cancel": "Cancel",
"app.recording.startTitle": "Start recording",
"app.recording.stopTitle": "Pause recording",
"app.recording.resumeTitle": "Resume recording",