bigbluebutton-Github/bigbluebutton-html5/imports/ui/components/captions/writer-menu/container.jsx

28 lines
1.2 KiB
React
Raw Normal View History

2021-05-18 04:25:07 +08:00
import React, { useContext } from 'react';
import { withTracker } from 'meteor/react-meteor-data';
import { withModalMounter } from '/imports/ui/components/modal/service';
import CaptionsService from '/imports/ui/components/captions/service';
import WriterMenu from './component';
2021-08-05 19:03:24 +08:00
import LayoutContext from '../../layout/context';
import Auth from '/imports/ui/services/auth';
import { UsersContext } from '/imports/ui/components/components-data/users-context/context';
const ROLE_MODERATOR = Meteor.settings.public.user.role_moderator;
2021-05-18 04:25:07 +08:00
const WriterMenuContainer = (props) => {
2021-08-05 19:03:24 +08:00
const layoutContext = useContext(LayoutContext);
const { layoutContextDispatch } = layoutContext;
const usingUsersContext = useContext(UsersContext);
const { users } = usingUsersContext;
const currentUser = users[Auth.meetingID][Auth.userID];
const amIModerator = currentUser.role === ROLE_MODERATOR;
return amIModerator && <WriterMenu {...{ layoutContextDispatch, ...props }} />;
2021-05-18 04:25:07 +08:00
};
export default withModalMounter(withTracker(({ mountModal }) => ({
closeModal: () => mountModal(null),
allLocales: CaptionsService.getAvailableLocales(),
2021-08-09 22:24:02 +08:00
takeOwnership: (locale) => CaptionsService.takeOwnership(locale),
}))(WriterMenuContainer));