From d5cf61d168bdbcf05032d5a8003e61386ae8deb2 Mon Sep 17 00:00:00 2001 From: Yuval Adam <_@yuv.al> Date: Mon, 28 Sep 2020 22:05:05 +0300 Subject: Finalize geo parsing from IP --- iss/server.py | 16 +++++++--------- 1 file changed, 7 insertions(+), 9 deletions(-) (limited to 'iss/server.py') diff --git a/iss/server.py b/iss/server.py index e1bbfe4..e6e59b7 100644 --- a/iss/server.py +++ b/iss/server.py @@ -1,8 +1,9 @@ -from fastapi import FastAPI, Request, Response, Header +from fastapi import FastAPI, Request, Header from fastapi.staticfiles import StaticFiles from fastapi.templating import Jinja2Templates from typing import Optional +from .geo import get_location from .predictions import Predictions app = FastAPI() @@ -13,10 +14,12 @@ templates = Jinja2Templates(directory="iss/templates") @app.get("/") -async def home(request: Request): - preds = Predictions(34.7641, 32.0669, altitude=0, days=5).get_grouped_predictions() +async def home(request: Request, cf_connecting_ip: Optional[str] = Header(None)): + client_ip = cf_connecting_ip or request.client.host + location = get_location(client_ip) + # preds = Predictions(lat, lng, tz=tz, altitude=0, days=5).get_grouped_predictions() return templates.TemplateResponse( - "index.html", {"request": request, "predictions": preds} + "index.html", {"request": request, "location": location} ) @@ -31,8 +34,3 @@ async def passes(request: Request, lat: float, lng: float): "location": {"lat": lat, "lng": lng}, }, ) - - -@app.get("/ip") -async def ip(request: Request, cf_connecting_ip: Optional[str] = Header(None)): - return Response(cf_connecting_ip or request.client.host) -- cgit v1.3.1