Cloud: Dynamic fallback msg support

before popping up an error dialog, the GUI can check another URL for an
explanation about server downtimes etc.,
pull/3/merge
jmoenig 2013-03-22 12:07:54 +01:00
rodzic 2c54645400
commit f34d319b0c
2 zmienionych plików z 26 dodań i 2 usunięć

25
gui.js
Wyświetl plik

@ -3180,8 +3180,31 @@ IDE_Morph.prototype.cloudResponse = function () {
IDE_Morph.prototype.cloudError = function () {
var myself = this;
function getURL(url) {
try {
var request = new XMLHttpRequest();
request.open('GET', url, false);
request.send();
if (request.status === 200) {
return request.responseText;
}
return null;
} catch (err) {
return null;
}
}
return function (responseText, url) {
var response = responseText;
// first, try to find out an explanation for the error
// and notify the user about it,
// if none is found, show an error dialog box
var response = responseText,
explanation = getURL('http://snap.berkeley.edu/cloudmsg.txt');
if (explanation) {
myself.showMessage(explanation);
return;
}
if (response.length > 50) {
response = response.substring(0, 50) + '...';
}

Wyświetl plik

@ -1557,4 +1557,5 @@ ______
* Blocks, GUI: "Zoom blocks…" feature in the settings menu (no longer hidden)
* Objects: numeric prompters for watcher's sliderMin/Max
* translation updates
* Objects: 'pic...' screenshot feature for the stage
* Objects: 'pic…' screenshot feature for the stage
* GUI, Cloud: Fallback message support before showing an error