From 6b77df6252b04f1ada0b596a59ce62739df8b438 Mon Sep 17 00:00:00 2001 From: Pierros Papadeas Date: Sat, 14 Oct 2017 11:13:19 +0100 Subject: [PATCH] Add stats and beautify stations page --- network/base/models.py | 5 +++++ network/static/css/app.css | 4 ++++ network/static/js/stations.js | 9 +++++++++ network/templates/base/stations.html | 28 +++++++++++++++++++++++++--- 4 files changed, 43 insertions(+), 3 deletions(-) create mode 100644 network/static/js/stations.js diff --git a/network/base/models.py b/network/base/models.py index ee5295c..f41f188 100644 --- a/network/base/models.py +++ b/network/base/models.py @@ -126,6 +126,11 @@ class Station(models.Model): else: return False + @property + def observations_count(self): + count = self.observations.all().count() + return count + @property def apikey(self): return get_apikey(user=self.owner) diff --git a/network/static/css/app.css b/network/static/css/app.css index 3a0b1e9..47e3e9c 100644 --- a/network/static/css/app.css +++ b/network/static/css/app.css @@ -301,6 +301,10 @@ span.datetime-time { margin-top: 10px; } +.station-antennas .label-info { + margin: 2px; +} + /* Observations ==================== */ diff --git a/network/static/js/stations.js b/network/static/js/stations.js new file mode 100644 index 0000000..a190479 --- /dev/null +++ b/network/static/js/stations.js @@ -0,0 +1,9 @@ +$(document).ready(function() { + 'use strict'; + + // Render Station success rate + var success_rate = $('.gs.progress-bar-success').data('success-rate'); + var percentagerest = $('.gs.progress-bar-danger').data('percentagerest'); + $('.gs.progress-bar-success').css('width', success_rate + '%'); + $('.gs.progress-bar-danger').css('width', percentagerest + '%'); +}); diff --git a/network/templates/base/stations.html b/network/templates/base/stations.html index e7bd490..c19d8c3 100644 --- a/network/templates/base/stations.html +++ b/network/templates/base/stations.html @@ -19,7 +19,8 @@ ID Name Location - Altitude + Last seen + Observations Antennas Owner @@ -53,12 +54,32 @@ {% if station.qthlocator %} - {{ station.qthlocator }} {% endif %} + @{{ station.alt}}m {% endif %} - {{ station.alt}} m + {% if station.last_seen %} + {{ station.last_seen|timesince }} ago + {% else %} + Never seen + {% endif %} + + + {% if station.success_rate %} + + {{ station.observations_count }} + + {% else %} + No stats + {% endif %} + + {% for antenna in station.antenna.all %} - {{ antenna.band}} {{ antenna.get_antenna_type_display }} | {{ antenna.frequency|frq }} - {{ antenna.frequency_max|frq }}
+ + {{ antenna.band}} {{ antenna.get_antenna_type_display }} + {% endfor %} @@ -79,4 +100,5 @@ {% block javascript %} + {% endblock javascript %}