From a2be153014aaf57d9b245010991ef268bd3fe31a Mon Sep 17 00:00:00 2001 From: Skylar Ittner Date: Sat, 23 Jan 2021 18:45:54 -0700 Subject: [PATCH] Don't silently fail when server unreachable --- www/assets/js/rates.js | 14 +++++++++----- www/assets/js/track.js | 14 +++++++++----- 2 files changed, 18 insertions(+), 10 deletions(-) diff --git a/www/assets/js/rates.js b/www/assets/js/rates.js index c779580..1430721 100644 --- a/www/assets/js/rates.js +++ b/www/assets/js/rates.js @@ -77,11 +77,15 @@ function getRates() { }, function (xhr) { app.dialog.close(); - var error = $.parseJSON(xhr.responseText); - if (error && typeof error.msg != 'undefined') { - app.dialog.alert(error.msg, "Error"); - } else { - app.dialog.alert("A server or network error occurred.", "Error"); + try { + var error = $.parseJSON(xhr.responseText); + if (error && typeof error.msg != 'undefined') { + app.dialog.alert(error.msg, "Error"); + } else { + app.dialog.alert("There's a server or network problem. Check your Internet connection or try again later.", "Error"); + } + } catch (ex) { + app.dialog.alert("There's a server or network problem. Check your Internet connection or try again later.", "Error"); } }, "GET"); } \ No newline at end of file diff --git a/www/assets/js/track.js b/www/assets/js/track.js index 9f85884..dcf766e 100644 --- a/www/assets/js/track.js +++ b/www/assets/js/track.js @@ -111,11 +111,15 @@ function trackOpenAsync(routeTo, routeFrom, resolve, reject) { }, function (xhr) { app.dialog.close(); - var error = $.parseJSON(xhr.responseText); - if (error && typeof error.msg != 'undefined') { - app.dialog.alert(error.msg, "Error"); - } else { - app.dialog.alert("A server or network error occurred.", "Error"); + try { + var error = $.parseJSON(xhr.responseText); + if (error && typeof error.msg != 'undefined') { + app.dialog.alert(error.msg, "Error"); + } else { + app.dialog.alert("There's a server or network problem. Check your Internet connection or try again later.", "Error"); + } + } catch (ex) { + app.dialog.alert("There's a server or network problem. Check your Internet connection or try again later.", "Error"); } reject(); }, "GET");