diff --git a/sd-card/html/backup.html b/sd-card/html/backup.html
index 260354d92..c55c3d3db 100644
--- a/sd-card/html/backup.html
+++ b/sd-card/html/backup.html
@@ -122,13 +122,13 @@
Restore Configuration
xhr.timeout = 5000; // time in milliseconds
}
else if (retry == 2) { // longer timeout
- xhr.timeout = 20000; // time in milliseconds
+ xhr.timeout = 10000; // time in milliseconds
}
else if (retry == 3) { // longer timeout
- xhr.timeout = 30000; // time in milliseconds
+ xhr.timeout = 20000; // time in milliseconds
}
else { // very long timeout
- xhr.timeout = 60000; // time in milliseconds
+ xhr.timeout = 30000; // time in milliseconds
}
xhr.onload = () => { // Request finished
@@ -146,6 +146,20 @@ Restore Configuration
}
};
+ xhr.onprogress = (e) => { // XMLHttpRequest progress ... extend timeout
+ xhr.timeout = xhr.timeout + 500;
+ };
+
+ xhr.onerror = (e) => { // XMLHttpRequest error loading
+ console.log("Error on fetching " + url + "!");
+ if (retry > 5) {
+ setStatus("Backup failed, please restart the device and try again!");
+ }
+ else {
+ fetchFiles(urls, filesData, index, retry+1, zipFilename);
+ }
+ };
+
xhr.ontimeout = (e) => { // XMLHttpRequest timed out
console.log("Timeout on fetching " + url + "!");
if (retry > 5) {