donar bus erweiterung
This commit is contained in:
parent
820036e960
commit
04194aeac8
@ -23,4 +23,7 @@ urlpatterns = [
|
||||
url(r'^search/$', views.search_room, name='search-rooms'),
|
||||
url(r'^search/(?P<room>.+/.+)/$', views.show_room, name='show-room'),
|
||||
url(r'^search/(?P<room>.+)/$', views.show_room, name='show-room'),
|
||||
|
||||
# VGN
|
||||
url(r'^bus/$', views.bus_connections, name='vgn-bus'),
|
||||
]
|
||||
|
||||
@ -30,4 +30,5 @@ def show_room(request, room):
|
||||
|
||||
|
||||
def bus_connections(request):
|
||||
return render(request, '')
|
||||
locations = VGN_Coords.objects.all()
|
||||
return render(request, 'donar/vgn_connections.jinja', {'locations': locations})
|
||||
|
||||
66
ofu_app/static/js/donar/vgn.js
Normal file
66
ofu_app/static/js/donar/vgn.js
Normal file
@ -0,0 +1,66 @@
|
||||
/**
|
||||
* Created by michigg on 17.10.17.
|
||||
*/
|
||||
document.addEventListener('DOMContentLoaded', loadVGNPos);
|
||||
|
||||
function getPos() {
|
||||
var lat = 49.8955663;
|
||||
var lon = 10.886907899999999;
|
||||
if (navigator.geolocation) {
|
||||
var geo_option = {
|
||||
enableHighAccuracy: true
|
||||
};
|
||||
navigator.geolocation.getCurrentPosition(function (position) {
|
||||
console.log(position);
|
||||
lat = position.coords.latitude;
|
||||
lon = position.coords.longitude;
|
||||
}, function (err) {
|
||||
console.log(err.code);
|
||||
console.log(err.message);
|
||||
}, geo_option)
|
||||
}
|
||||
console.log(lat)
|
||||
return {'lat': lat, 'lon': lon};
|
||||
}
|
||||
function loadData(url) {
|
||||
var address = document.getElementById('nav_data').getAttribute('data-address')
|
||||
|
||||
var xhttp = new XMLHttpRequest();
|
||||
xhttp.onreadystatechange = function () {
|
||||
console.log('receive')
|
||||
if (this.readyState == 4 && this.status == 200) {
|
||||
setVGNLinks(JSON.parse(this.response))
|
||||
}
|
||||
};
|
||||
xhttp.open("GET", url, true);
|
||||
xhttp.send();
|
||||
}
|
||||
|
||||
|
||||
function getVGNCoords(lat, lon) {
|
||||
console.log("getVGNCoords: " + lat + "/" + lon)
|
||||
var url = "https://www.vgn.de/ib/site/tools/VN_PointDetail.php?Edition=de&lat=" + lat + "&lon=" + lon + "&mode=fnSetFromEFA&mode2=origin&_=1508264908632";
|
||||
console.log(url)
|
||||
loadData(url);
|
||||
}
|
||||
|
||||
function loadVGNPos() {
|
||||
document.getElementsByTagName('body')[0].style.visibility = "hidden"
|
||||
pos = getPos()
|
||||
console.log(pos)
|
||||
getVGNCoords(pos['lat'], pos['lon'])
|
||||
}
|
||||
|
||||
function setVGNLinks(response) {
|
||||
console.log("Get Response: " + response);
|
||||
var type = response['ident']['type'];
|
||||
var startpoint = response['ident']['name'];
|
||||
console.log(startpoint)
|
||||
var connections = document.getElementsByClassName('connection');
|
||||
var destinations = document.getElementsByClassName('destination')
|
||||
for (var i = 0; i < connections.length; i++) {
|
||||
connections[i].href = 'https://www.vgn.de/verbindungen/?to=' + startpoint + '&td=' + destinations[i].innerHTML;
|
||||
console.log(connections[i].href)
|
||||
}
|
||||
document.getElementsByTagName('body')[0].style.visibility = "visible"
|
||||
}
|
||||
@ -8,7 +8,7 @@
|
||||
<div class="row">
|
||||
{{ macros.home_item_with_icon(icon='fa-map-o', url_id='search-rooms', title="Donar", icon_size='fa-3x') }}
|
||||
{{ macros.home_item_with_icon(icon='fa-search', link='https://suche.wiai.de/', title="Roofis", icon_size='fa-3x') }}
|
||||
{{ macros.home_item_with_icon(icon='fa-bus', url_id='', title='Bus und Bahn', icon_size='fa-3x') }}
|
||||
{{ macros.home_item_with_icon(icon='fa-bus', url_id='vgn-bus', title='Bus und Bahn', icon_size='fa-3x') }}
|
||||
</div>
|
||||
</div>
|
||||
{% endblock %}
|
||||
@ -1,10 +1,22 @@
|
||||
{% extends 'base.jinja' %}
|
||||
<!-- Make sure you put this AFTER Leaflet's CSS -->
|
||||
{% block js_extra %}
|
||||
<script id="nav_data" src="{{ static('js/donar/vgn.js') }}"></script>
|
||||
{% endblock %}
|
||||
{% block headline %}
|
||||
<h1 class="text-center"> VGN Connections</h1>
|
||||
<p>Donar</p>
|
||||
<p class="text-center">Donar</p>
|
||||
{% endblock %}
|
||||
{% block content %}
|
||||
{% for location in locations %}
|
||||
{% endfor %}
|
||||
<div class="row">
|
||||
{% if locations %}
|
||||
{% for location in locations %}
|
||||
<div class="col-12 p-1">
|
||||
<div class="p-2 border border-dark rounded-3 border border-dark rounded bg-light text-dark">
|
||||
<a class="connection" href="">{{ location.name }}</a>
|
||||
<p class="destination" hidden>{{ location.coords}}</p>
|
||||
</div>
|
||||
</div>
|
||||
{% endfor %}
|
||||
{% endif %}
|
||||
</div>
|
||||
{% endblock %}
|
||||
|
||||
Reference in New Issue
Block a user