diff --git a/app.py b/app.py index 0771d23..a7de128 100644 --- a/app.py +++ b/app.py @@ -56,10 +56,18 @@ def device(device_id): def overview(device_id): cadences = db.get_all_cadences(device_id) last_cadence = cadences[-1]['rpm'] if cadences else 0 + if cadences: + first = cadences[0]['logged_at'] + last = cadences[-1]['logged_at'] + duration = str(timedelta(seconds=(last-first).seconds)) - graph_data = generate_sparkline_graph([c['rpm'] for c in cadences]) + last_cadence = cadences[-1]['rpm'] - return render_template('overview.html', last_cadence=last_cadence, cadences=cadences[-15:], graph_data=graph_data) + graph_data = generate_sparkline_graph( + [c['rpm'] for c in cadences[-100:]]) + + return render_template('overview.html', last_cadence=last_cadence, duration=duration, cadences=cadences[-15:], graph_data=graph_data) + return render_template('overview.html', last_cadence=0, duration=duration, cadences=[], graph_data='') @ app.route("/cadence", methods=['POST']) diff --git a/db.py b/db.py index 9d4030f..4f6421c 100644 --- a/db.py +++ b/db.py @@ -41,7 +41,7 @@ class DataBase(): [rpm, device_id], commit=True) def get_all_cadences(self, device_id): - return self.execute("""SELECT LOGGED_AT, RPM FROM cadence WHERE device_id = %s AND (NOW() < (LOGGED_AT + (INTERVAL '3 hour'))) LIMIT 100""", [device_id]) + return self.execute("""SELECT LOGGED_AT, RPM FROM cadence WHERE device_id = %s AND (NOW() < (LOGGED_AT + (INTERVAL '3 hour')))""", [device_id]) def get_devices(self): return self.execute(""" diff --git a/templates/overview.html b/templates/overview.html index 6c7d947..4a0d128 100644 --- a/templates/overview.html +++ b/templates/overview.html @@ -1,6 +1,8 @@