aboutsummaryrefslogtreecommitdiff
path: root/app/features/conference/components/Conference.js
diff options
context:
space:
mode:
authorakshitkrnagpal <akshitkrnagpal@gmail.com>2018-07-08 12:07:31 +0530
committerSaúl Ibarra Corretgé <s@saghul.net>2018-07-10 20:51:02 +0200
commit736f2ae1cb99250e344afca4b5be7c16fc7727f3 (patch)
tree4f2c522a270044e03f9b97c3d3c86d650957dc98 /app/features/conference/components/Conference.js
parent921b7f6f9bb1fef87178349983a07a12c31718e3 (diff)
Display error when unable to join conference
Diffstat (limited to 'app/features/conference/components/Conference.js')
-rw-r--r--app/features/conference/components/Conference.js20
1 files changed, 13 insertions, 7 deletions
diff --git a/app/features/conference/components/Conference.js b/app/features/conference/components/Conference.js
index 5c3dd02..a4b6d0d 100644
--- a/app/features/conference/components/Conference.js
+++ b/app/features/conference/components/Conference.js
@@ -101,7 +101,6 @@ class Conference extends Component<Props, State> {
this._ref = React.createRef();
- this._navigateToHome = this._navigateToHome.bind(this);
this._onIframeLoad = this._onIframeLoad.bind(this);
}
@@ -121,7 +120,8 @@ class Conference extends Component<Props, State> {
script.async = true;
script.onload = () => this._onScriptLoad(parentNode, room, serverURL);
- script.onerror = this._navigateToHome;
+ script.onerror = (event: Event) =>
+ this._navigateToHome(event, room, serverURL);
script.src = getExternalApiURL(serverURL);
this._ref.current.appendChild(script);
@@ -186,15 +186,20 @@ class Conference extends Component<Props, State> {
}
}
- _navigateToHome: (*) => void;
-
/**
* Navigates to home screen (Welcome).
*
+ * @param {Event} event - Event by which the function is called.
+ * @param {string} room - Room name.
+ * @param {string} serverURL - Server URL.
* @returns {void}
*/
- _navigateToHome() {
- this.props.dispatch(push('/'));
+ _navigateToHome(event: Event, room: ?string, serverURL: ?string) {
+ this.props.dispatch(push('/', {
+ error: event.type === 'error',
+ room,
+ serverURL
+ }));
}
/**
@@ -231,7 +236,8 @@ class Conference extends Component<Props, State> {
setupAlwaysOnTopRender(this._api);
setupWiFiStats(iframe);
- this._api.on('readyToClose', this._navigateToHome);
+ this._api.on('readyToClose', (event: Event) =>
+ this._navigateToHome(event));
this._api.on('videoConferenceJoined',
(conferenceInfo: Object) =>
this._onVideoConferenceJoined(conferenceInfo));