diff --git a/app.py b/app.py index fc99228..13cd4ce 100644 --- a/app.py +++ b/app.py @@ -20,7 +20,7 @@ def index(): @cache.cached(timeout=5) def tarc(): d=httpx.get("https://tarc.rideralerts.com/InfoPoint/rest/Vehicles/GetAllVehiclesForRoutes?routeIDs=0,"+routes).json() - return "\n".join(f"{v['Latitude']},{v['Longitude']},{v['RouteId']},{v['Name']},{v['OnBoard']},{v['DirectionLong']},{v['Speed']},{v['LastUpdated'][6:16]}" for v in d) + return "\n".join(f"{v['Latitude']},{v['Longitude']},{v['RouteId']},{v['Name']},{v['Heading']},{v['DirectionLong']},{v['Destination']},{v['Speed']},{v['LastUpdated'][6:16]}" for v in d) @app.route('/') @cache.cached(timeout=5) diff --git a/templates/map.html b/templates/map.html index aae2b55..f8c492b 100644 --- a/templates/map.html +++ b/templates/map.html @@ -9,7 +9,7 @@ - +
@@ -35,19 +35,17 @@ function updateMap(){ let routes={}; fetch("tarc.csv").then(response=>response.text()).then(csv=>{ csv.split("\n").forEach(line=>{ - let [lat,lng,r,id,p,d,s,t]=line.split(","); - p=parseInt(p); + let [lat,lng,r,id,h,dir,dest,s,t]=line.split(","); t=new Date(t*1000).toLocaleTimeString("en-US",{hour12:false}); if(!busLayers[r]){busLayers[r]=L.layerGroup().addTo(map)} if(!busMarkers[id]){busMarkers[id]=L.marker([0,0],{icon:busIcon}).on('click',()=>filterRoutes(r)).addTo(busLayers[r])} - if(!routes[r]){routes[r]=[0,0]} - routes[r][0]++; - routes[r][1]+=p; - busMarkers[id].setLatLng([lat,lng]).bindPopup(`Route ${r}
#${id}
${p} riders
${d}
${s}mph
${t}`) + if(!routes[r]){routes[r]=0} + routes[r]++; + busMarkers[id].setLatLng([lat,lng]).bindPopup(`Route ${r}
#${id} ^
${dir}
${dest}
${s}mph
${t}`) }) let overlayLayers={}; for(let r in routes){ - overlayLayers[`${r.padStart(2,0)} | ${String(routes[r][0]).padStart(2,0)} vehicle(s) | ${routes[r][1]} rider(s)`]=busLayers[r] + overlayLayers[`${r.padStart(2,0)} | ${String(routes[r]).padStart(2,0)} vehicle(s)`]=busLayers[r] } layerControl.remove(); layerControl=L.control.layers(null,overlayLayers).addTo(map);