bigbluebutton-Github/bigbluebutton-html5/imports/ui/components/end-meeting-confirmation/component.jsx

78 lines
2.2 KiB
React
Raw Normal View History

import React from 'react';
import PropTypes from 'prop-types';
import { defineMessages, injectIntl } from 'react-intl';
import Button from '/imports/ui/components/button/component';
import Modal from '/imports/ui/components/modal/simple/component';
import { styles } from './styles';
const intlMessages = defineMessages({
endMeetingTitle: {
id: 'app.endMeeting.title',
description: 'end meeting title',
},
endMeetingDescription: {
id: 'app.endMeeting.description',
description: 'end meeting description',
},
yesLabel: {
id: 'app.endMeeting.yesLabel',
description: 'label for yes button for end meeting',
},
noLabel: {
id: 'app.endMeeting.noLabel',
description: 'label for no button for end meeting',
},
});
const propTypes = {
2021-01-21 04:49:07 +08:00
intl: PropTypes.shape({
formatMessage: PropTypes.func.isRequired,
}).isRequired,
closeModal: PropTypes.func.isRequired,
endMeeting: PropTypes.func.isRequired,
2021-01-23 03:48:50 +08:00
meetingTitle: PropTypes.string.isRequired,
users: PropTypes.number.isRequired,
};
class EndMeetingComponent extends React.PureComponent {
render() {
const {
2021-01-21 04:49:07 +08:00
users, intl, closeModal, endMeeting, meetingTitle,
} = this.props;
return (
<Modal
overlayClassName={styles.overlay}
className={styles.modal}
2019-01-18 00:33:43 +08:00
onRequestClose={closeModal}
hideBorder
2021-01-21 04:49:07 +08:00
title={intl.formatMessage(intlMessages.endMeetingTitle, { 0: meetingTitle })}
>
<div className={styles.container}>
<div className={styles.description}>
2021-01-23 03:48:50 +08:00
{intl.formatMessage(intlMessages.endMeetingDescription, { 0: users })}
</div>
<div className={styles.footer}>
<Button
2019-06-04 23:05:27 +08:00
data-test="confirmEndMeeting"
color="primary"
className={styles.button}
label={intl.formatMessage(intlMessages.yesLabel)}
2019-01-18 00:33:43 +08:00
onClick={endMeeting}
/>
<Button
label={intl.formatMessage(intlMessages.noLabel)}
className={styles.button}
2019-01-18 00:33:43 +08:00
onClick={closeModal}
/>
</div>
</div>
</Modal>
);
}
}
EndMeetingComponent.propTypes = propTypes;
2021-01-23 03:48:50 +08:00
export default injectIntl(EndMeetingComponent);