diff --git a/js/sim.js b/js/sim.js index 63e05a35e..8efa4fca9 100644 --- a/js/sim.js +++ b/js/sim.js @@ -3150,6 +3150,12 @@ function overlay(overlayType, data) { contents += '
'; focusElem = '#overlay_ok'; break; + case 'nothirdparty': + contents += '
You have third-party cookies disabled in your browser.
'; + contents += 'Pokemon Showdown uses third-party cookies and localStorage to handle teams, preferences, and logging in on third-party servers.
We recommend that you enable third-party cookies and then refresh this page. You can ignore this recommendation if you want, but some things might not work properly on third-party servers.
'; + focusElem = '#overlay_ok'; + break; case 'init': if (data) return; contents = 'Pokemon Showdown is BETA and unfinished. If you are looking for something that isn\'t frequently down for maintenance and bug fixes, please check back in several weeks.
'; @@ -3672,7 +3678,8 @@ teams = (function() { }; } }; - if (!Config.psim || !window.postMessage) { + if (!Config.psim) { + // normal connection to main server $.extend(Config, Config.defaultserver); (function() { if (!Config.testclient) return; @@ -3686,6 +3693,9 @@ teams = (function() { if (m[3]) Config.serverport = m[3].substr(1); })(); return connect(); + } else if (!window.postMessage) { + // browser does not support cross-document messaging + return overlay('unsupported'); } var origin = 'http://play.pokemonshowdown.com'; $(window).on('message', (function() { @@ -3742,7 +3752,7 @@ teams = (function() { }; // check for third-party cookies being disabled if (data.nothirdparty) { - overlay('message', 'You have third-party cookies disabled in your browser.Pokemon Showdown uses third-party cookies and localStorage to handle teams, preferences, and logging in on third-party servers.
We recommend that you enable third-party cookies and then refresh this page. You can ignore this recommendation if you want, but some things might not work properly on third-party servers.'); + overlay('nothirdparty'); } // connect connect();