diff --git a/bigbluebutton-html5/imports/ui/components/recording/component.jsx b/bigbluebutton-html5/imports/ui/components/recording/component.jsx index 72266f5a935769c4144d89698ac18699f6daddd9..f7b26ae8caa9d0fad9f1ca1d80129de5b8eeb57d 100755 --- a/bigbluebutton-html5/imports/ui/components/recording/component.jsx +++ b/bigbluebutton-html5/imports/ui/components/recording/component.jsx @@ -14,6 +14,10 @@ const intlMessages = defineMessages({ id: 'app.recording.stopTitle', description: 'stop recording title', }, + resumeTitle: { + id: 'app.recording.resumeTitle', + description: 'resume recording title', + }, startDescription: { id: 'app.recording.startDescription', description: 'start recording description', @@ -36,11 +40,13 @@ const propTypes = { intl: intlShape.isRequired, closeModal: PropTypes.func.isRequired, toggleRecording: PropTypes.func.isRequired, + recordingTime: PropTypes.number, recordingStatus: PropTypes.bool, amIModerator: PropTypes.bool, }; const defaultProps = { + recordingTime: -1, recordingStatus: false, amIModerator: false, }; @@ -50,11 +56,21 @@ class RecordingComponent extends React.PureComponent { const { intl, recordingStatus, + recordingTime, amIModerator, closeModal, toggleRecording, } = this.props; + let title; + + if (!recordingStatus) { + title = recordingTime >= 0 ? intl.formatMessage(intlMessages.resumeTitle) + : intl.formatMessage(intlMessages.startTitle); + } else { + title = intl.formatMessage(intlMessages.stopTitle); + } + if (!amIModerator) return null; return ( <Modal @@ -66,11 +82,7 @@ class RecordingComponent extends React.PureComponent { <div className={styles.container}> <div className={styles.header}> <div className={styles.title}> - { - intl.formatMessage(!recordingStatus - ? intlMessages.startTitle - : intlMessages.stopTitle) - } + {title} </div> </div> <div className={styles.description}> diff --git a/bigbluebutton-html5/imports/ui/components/recording/container.jsx b/bigbluebutton-html5/imports/ui/components/recording/container.jsx index 72815e90b48c75dd0b6de05b8b33a670ddd54460..4c212cfc179467440f56df4bcb233c49bd45385c 100755 --- a/bigbluebutton-html5/imports/ui/components/recording/container.jsx +++ b/bigbluebutton-html5/imports/ui/components/recording/container.jsx @@ -8,16 +8,19 @@ import RecordingComponent from './component'; const RecordingContainer = props => <RecordingComponent {...props} />; -export default withModalMounter(withTracker(({ mountModal }) => ({ - closeModal() { - mountModal(null); - }, +export default withModalMounter(withTracker(({ mountModal }) => { + const { recording, time } = Meetings.findOne({ meetingId: Auth.meetingID }).recordProp; - toggleRecording: () => { - makeCall('toggleRecording'); - mountModal(null); - }, + return ({ + closeModal: () => mountModal(null), - recordingStatus: (Meetings.findOne({ meetingId: Auth.meetingID }).recordProp.recording), + toggleRecording: () => { + makeCall('toggleRecording'); + mountModal(null); + }, -}))(RecordingContainer)); + recordingStatus: recording, + recordingTime: time, + + }); +})(RecordingContainer)); diff --git a/bigbluebutton-html5/private/locales/en.json b/bigbluebutton-html5/private/locales/en.json index a266a8c10dca6f1f9304c1dba4a8ad9c7d51e6a0..977b389855ed9f89454e55b9c13442ef686824ea 100755 --- a/bigbluebutton-html5/private/locales/en.json +++ b/bigbluebutton-html5/private/locales/en.json @@ -431,6 +431,7 @@ "app.lock-viewers.Layout": "Layout", "app.recording.startTitle": "Start recording", "app.recording.stopTitle": "Pause recording", + "app.recording.resumeTitle": "Resume recording", "app.recording.startDescription": "(You can select the record button again later to pause the recording.)", "app.recording.stopDescription": "Are you sure you want to pause the recording? (You can resume by selecting the record button again.)", "app.videoPreview.cameraLabel": "Camera",