diff --git a/bigbluebutton-html5/imports/ui/components/nav-bar/component.jsx b/bigbluebutton-html5/imports/ui/components/nav-bar/component.jsx index fa1f1f3dcf4b98900f8aefc21166ce338072da9a..1d3f74f8d49708a09dac6ccee1192dda6ccd7c2e 100755 --- a/bigbluebutton-html5/imports/ui/components/nav-bar/component.jsx +++ b/bigbluebutton-html5/imports/ui/components/nav-bar/component.jsx @@ -284,6 +284,7 @@ class NavBar extends PureComponent { intl, shortcuts: TOGGLE_USERLIST_AK, mountModal, + isBreakoutRoom, } = this.props; const recordingMessage = recordProps.recording ? 'recordingIndicatorOn' : 'recordingIndicatorOff'; @@ -342,7 +343,7 @@ class NavBar extends PureComponent { /> </div> <div className={styles.right}> - <SettingsDropdownContainer amIModerator={amIModerator} /> + <SettingsDropdownContainer amIModerator={amIModerator} isBreakoutRoom={isBreakoutRoom} /> </div> </div> ); diff --git a/bigbluebutton-html5/imports/ui/components/nav-bar/settings-dropdown/component.jsx b/bigbluebutton-html5/imports/ui/components/nav-bar/settings-dropdown/component.jsx index fab469601639fccd1a576633a5f74153aa4c9d1c..bf79a4e706a7317b20b3332ed3d0cd6386dbc791 100755 --- a/bigbluebutton-html5/imports/ui/components/nav-bar/settings-dropdown/component.jsx +++ b/bigbluebutton-html5/imports/ui/components/nav-bar/settings-dropdown/component.jsx @@ -98,6 +98,7 @@ const propTypes = { noIOSFullscreen: PropTypes.bool, amIModerator: PropTypes.bool, shortcuts: PropTypes.string, + isBreakoutRoom: PropTypes.bool, }; const defaultProps = { @@ -105,6 +106,7 @@ const defaultProps = { noIOSFullscreen: true, amIModerator: false, shortcuts: '', + isBreakoutRoom: false, }; class SettingsDropdown extends PureComponent { @@ -173,9 +175,11 @@ class SettingsDropdown extends PureComponent { renderMenuItems() { const { - intl, mountModal, amIModerator, + intl, mountModal, amIModerator, isBreakoutRoom, } = this.props; + const allowedToEndMeeting = amIModerator && !isBreakoutRoom; + const { showHelpButton: helpButton, helpLink } = Meteor.settings.public.app; return _.compact([ @@ -213,16 +217,16 @@ class SettingsDropdown extends PureComponent { onClick={() => mountModal(<ShortcutHelpComponent />)} />), (<DropdownListSeparator key={_.uniqueId('list-separator-')} />), - !amIModerator ? null - : ( - <DropdownListItem - key="list-item-end-meeting" - icon="application" - label={intl.formatMessage(intlMessages.endMeetingLabel)} - description={intl.formatMessage(intlMessages.endMeetingDesc)} - onClick={() => mountModal(<EndMeetingConfirmationContainer />)} - /> - ), + allowedToEndMeeting + ? (<DropdownListItem + key="list-item-end-meeting" + icon="application" + label={intl.formatMessage(intlMessages.endMeetingLabel)} + description={intl.formatMessage(intlMessages.endMeetingDesc)} + onClick={() => mountModal(<EndMeetingConfirmationContainer />)} + /> + ) + : null, (<DropdownListItem key="list-item-logout" icon="logout"