diff options
author | Daniel Friesel <derf@finalrewind.org> | 2016-05-10 16:58:53 +0200 |
---|---|---|
committer | Daniel Friesel <derf@finalrewind.org> | 2016-05-10 16:58:53 +0200 |
commit | 562e05cfcfcd91b49f07ad48f7ba8533e2523670 (patch) | |
tree | 6d9aeb9b8212578ac5dc9cacc77ad4f6ff15415a | |
parent | 3bb39e37e3594d14c9ff9bb3024db6cff665bd45 (diff) |
_auto: show current request status
-rw-r--r-- | public/static/default.css | 5 | ||||
-rw-r--r-- | public/static/geolocation.js | 9 | ||||
-rw-r--r-- | templates/geolocation.html.ep | 1 |
3 files changed, 15 insertions, 0 deletions
diff --git a/public/static/default.css b/public/static/default.css index 222c9da..e0bb6a4 100644 --- a/public/static/default.css +++ b/public/static/default.css @@ -404,6 +404,11 @@ div.displaysingle div.info { color: #0000ff; } +div.candidatestatus { + text-align: center; + color: #999999; +} + div.candidatelist a { display: block; text-decoration: none; diff --git a/public/static/geolocation.js b/public/static/geolocation.js index 1d37c96..ccf0325 100644 --- a/public/static/geolocation.js +++ b/public/static/geolocation.js @@ -1,5 +1,10 @@ $(document).ready(function() { + var removeStatus = function() { + $('div.candidatestatus').remove(); + }; + var processResult = function(data) { + removeStatus(); if (data.error) { $('div.candidatelist').text(data.error); } else if (data.candidates.length == 0) { @@ -22,9 +27,11 @@ $(document).ready(function() { var processLocation = function(loc) { $.post('/_geolocation', {lon: loc.coords.longitude, lat: loc.coords.latitude}, processResult); + $('div.candidatestatus').text('Suche Bahnhöfe…'); }; var processError = function(error) { + removeStatus(); if (error.code == error.PERMISSION_DENIED) { $('div.candidatelist').text('Geolocation request denied'); } else if (error.code == error.POSITION_UNAVAILABLE) { @@ -38,7 +45,9 @@ $(document).ready(function() { if (navigator.geolocation) { navigator.geolocation.getCurrentPosition(processLocation, processError); + $('div.candidatestatus').text('Position wird bestimmt…'); } else { + removeStatus(); $('div.candidatelist').text('Geolocation is not supported by your browser'); } }); diff --git a/templates/geolocation.html.ep b/templates/geolocation.html.ep index a0667db..66e456a 100644 --- a/templates/geolocation.html.ep +++ b/templates/geolocation.html.ep @@ -1,2 +1,3 @@ <div class="candidateheader">Nächstgelegene Stationen:</div> +<div class="candidatestatus">Bitte warten…</div> <div class="candidatelist"></div> |