diff --git a/api_app.py b/api_app.py index 548dbaa..4840fca 100644 --- a/api_app.py +++ b/api_app.py @@ -69,6 +69,17 @@ def select_all_frames(conn): rows = cur.fetchall() return rows +def unique_stations(conn): + """ + Query all rows in the frames table + :param conn: the Connection object + :return: + """ + cur = conn.cursor() + cur.execute('SELECT *, MAX(id) FROM frames GROUP BY "from" ORDER BY MAX(id) DESC') + rows = cur.fetchall() + return rows + def select_frames(conn, n, url_params): # Should pass this a dict of fields and values (request.args) @@ -96,11 +107,18 @@ def index(): # Get list of recent packets using API # TODO use relative path response = json.loads(requests.get("https://digi.w1cdn.net/aprs_api/packets").text)['data'] + + # Play with function to create station list + stations = unique_stations(get_db_connection()) + print(stations) + + return render_template('index.html', station_call = config['Settings']['station_call'], station_lat = config['Settings']['station_lat'], station_lon = config['Settings']['station_lon'], - d = response) + frames = response, + stations = stations) class Packets(Resource): def get(self): diff --git a/templates/index.html b/templates/index.html index ae8d3ac..5678d2e 100644 --- a/templates/index.html +++ b/templates/index.html @@ -23,7 +23,7 @@ created (utc) more - {% for i in d %} + {% for i in frames %} {{ i['from'] }} {{ i['object_name'] }} @@ -37,6 +37,17 @@

Recent Stations

Coming soon, see https://amiok.net/gitea/W1CDN/aprs_tool/issues/16. + + + + + {% for i in stations %} + + + + {% endfor %} +
raw
{{ i['raw'] }}
+

Help

This is a work in progress. See https://amiok.net/gitea/W1CDN/aprs_tool for usage.