diff options
author | Daniel Friesel <derf@finalrewind.org> | 2016-05-14 13:39:03 +0200 |
---|---|---|
committer | Daniel Friesel <derf@finalrewind.org> | 2016-05-14 13:39:03 +0200 |
commit | 6f4e73168ff685e98a9ff918649095d6b48d9a8b (patch) | |
tree | e476db4c65495f518004eb7ceeb37047c7956c45 /public/static/geolocation.js | |
parent | c34271a75d7f88f8b80f0f410bf6f30dcd79043f (diff) |
more fancy geolocation errors
Diffstat (limited to 'public/static/geolocation.js')
-rw-r--r-- | public/static/geolocation.js | 26 |
1 files changed, 17 insertions, 9 deletions
diff --git a/public/static/geolocation.js b/public/static/geolocation.js index f34e1e1..f571762 100644 --- a/public/static/geolocation.js +++ b/public/static/geolocation.js @@ -2,19 +2,27 @@ $(document).ready(function() { var removeStatus = function() { $('div.candidatestatus').remove(); }; - var showError = function(str) { - var errnode = $(document.createElement('span')); + var showError = function(oneline, str) { + var errnode = $(document.createElement('div')); errnode.attr('class', 'error'); errnode.text(str); + + if (oneline) { + var shortnode = $(document.createElement('div')); + shortnode.attr('class', 'errshort'); + shortnode.text(oneline); + errnode.append(shortnode); + } + $('div.candidatelist').append(errnode); }; var processResult = function(data) { removeStatus(); if (data.error) { - showError(data.error); + showError('Backend-Fehler', data.error); } else if (data.candidates.length == 0) { - showError('Keine Bahnhöfe in 70km Umkreis gefunden'); + showError(null, 'Keine Bahnhöfe in 70km Umkreis gefunden'); } else { $.each(data.candidates, function(i, candidate) { @@ -39,13 +47,13 @@ $(document).ready(function() { var processError = function(error) { removeStatus(); if (error.code == error.PERMISSION_DENIED) { - showError('Standortanfrage abglehnt. Vermutlich fehlen die Rechte im Browser oder der Android Location Service ist deaktiviert.'); + showError('geolocation.error.PERMISSION_DENIED', 'Standortanfrage nicht möglich. Vermutlich fehlen die Rechte im Browser oder der Android Location Service ist deaktiviert.'); } else if (error.code == error.POSITION_UNAVAILABLE) { - showError('Standort konnte nicht ermittelt werden (Service nicht verfügbar)'); + showError('geolocation.error.POSITION_UNAVAILABLE', 'Standort konnte nicht ermittelt werden (Service nicht verfügbar)'); } else if (error.code == error.TIMEOUT) { - showError('Standort konnte nicht ermittelt werden (Timeout)'); + showError('geolocation.error.TIMEOUT', 'Standort konnte nicht ermittelt werden (Timeout)'); } else { - showError('Standort konnte nicht ermittelt werden (unbekannter Fehler)'); + showError('unknown geolocatior.error code', 'Standort konnte nicht ermittelt werden (unbekannter Fehler)'); } }; @@ -54,6 +62,6 @@ $(document).ready(function() { $('div.candidatestatus').text('Position wird bestimmt…'); } else { removeStatus(); - showError('Standortanfragen werden von diesem Browser nicht unterstützt'); + showError(null, 'Standortanfragen werden von diesem Browser nicht unterstützt'); } }); |