aboutsummaryrefslogtreecommitdiff
path: root/diplomacy/web/src/gui/core/page.jsx
diff options
context:
space:
mode:
Diffstat (limited to 'diplomacy/web/src/gui/core/page.jsx')
-rw-r--r--diplomacy/web/src/gui/core/page.jsx13
1 files changed, 9 insertions, 4 deletions
diff --git a/diplomacy/web/src/gui/core/page.jsx b/diplomacy/web/src/gui/core/page.jsx
index 560252c..5e7aee2 100644
--- a/diplomacy/web/src/gui/core/page.jsx
+++ b/diplomacy/web/src/gui/core/page.jsx
@@ -59,6 +59,7 @@ export class Page extends React.Component {
this._add_to_my_games = this._add_to_my_games.bind(this);
this._remove_from_my_games = this._remove_from_my_games.bind(this);
this._remove_from_games = this._remove_from_games.bind(this);
+ this.onReconnectionError = this.onReconnectionError.bind(this);
}
static wrapMessage(message) {
@@ -75,6 +76,10 @@ export class Page extends React.Component {
return <ContentConnection/>;
}
+ onReconnectionError(error) {
+ this.__disconnect(error);
+ }
+
//// Methods to load a global fancybox.
loadFancyBox(title, callback) {
@@ -124,18 +129,18 @@ export class Page extends React.Component {
//// Methods to sign out channel and go back to connection page.
- __disconnect() {
+ __disconnect(error) {
// Clear local data and go back to connection page.
this.connection.close();
this.connection = null;
this.channel = null;
this.availableMaps = null;
- const message = Page.wrapMessage(`Disconnected from channel and server.`);
+ const message = Page.wrapMessage(error ? `${error.toString()}` : `Disconnected from channel and server.`);
Diplog.success(message);
this.setState({
- error: null,
+ error: error ? message : null,
info: null,
- success: message,
+ success: error ? null : message,
name: null,
body: null,
// When disconnected, remove all games previously loaded.