From 94a2fca1ddd44fd23f9863e8deccee9cb05fce7c Mon Sep 17 00:00:00 2001 From: Daniel Friesel Date: Tue, 10 May 2016 12:45:11 +0200 Subject: a little bit of error handling --- public/static/geolocation.js | 14 +++++++++++++- templates/layouts/default.html.ep | 3 ++- 2 files changed, 15 insertions(+), 2 deletions(-) diff --git a/public/static/geolocation.js b/public/static/geolocation.js index 78b0691..63c08e8 100644 --- a/public/static/geolocation.js +++ b/public/static/geolocation.js @@ -22,8 +22,20 @@ $(document).ready(function() { $.post('/_geolocation', {lon: loc.coords.longitude, lat: loc.coords.latitude}, processResult); }; + var processError = function(error) { + if (error.code == error.PERMISSION_DENIED) { + $('div.candidatelist').text('Geolocation request denied'); + } else if (error.code == error.POSITION_UNAVAILABLE) { + $('div.candidatelist').text('Geolocation not available'); + } else if (error.code == error.TIMEOUT) { + $('div.candidatelist').text('Geolocation timeout'); + } else { + $('div.candidatelist').text('Unknown error'); + } + }; + if (navigator.geolocation) { - navigator.geolocation.getCurrentPosition(processLocation); + navigator.geolocation.getCurrentPosition(processLocation, processError); } else { $('div.candidatelist').text('Geolocation is not supported by your browser'); } diff --git a/templates/layouts/default.html.ep b/templates/layouts/default.html.ep index f57ceab..8979106 100644 --- a/templates/layouts/default.html.ep +++ b/templates/layouts/default.html.ep @@ -63,7 +63,8 @@ on 2015-01-02 at 07:00 CET. Alle Angaben ohne Gewähr.

% } -- cgit v1.2.3