From 42d13a90b5bf371c01e6b96373ba3b149dde56ba Mon Sep 17 00:00:00 2001 From: Sander Roosendaal Date: Fri, 3 Jan 2020 08:29:51 +0100 Subject: [PATCH] fixed bug in rower stats (gauges) --- rowers/templates/embedded_video.html | 50 ++++++++++++++-------------- rowers/templatetags/rowerfilters.py | 10 ++++-- 2 files changed, 33 insertions(+), 27 deletions(-) diff --git a/rowers/templates/embedded_video.html b/rowers/templates/embedded_video.html index 7d66b3de..82d6346b 100644 --- a/rowers/templates/embedded_video.html +++ b/rowers/templates/embedded_video.html @@ -1,4 +1,4 @@ -{% extends "newbase.html" %} +workout.user{% extends "newbase.html" %} {% load staticfiles %} {% load rowerfilters %} {% load i18n %} @@ -453,36 +453,36 @@ function copyText() { set_basic(); {% endif %} {% if 'forcepower' in metricsgroups %} - poweroptions.max = {{ rower.pw_an|add:100|round100 }}; - poweroptions.greenFrom = {{ rower.pw_ut2 }}; - poweroptions.greenTo = {{ rower.pw_at }}; - poweroptions.yellowFrom = {{ rower.pw_at }}; - poweroptions.yellowTo = {{ rower.pw_an }}; - poweroptions.redFrom = {{ rower.pw_an }}; - poweroptions.redTo = {{ rower.pw_an|add:100|round100 }}; - poweroptions.majorTicks = {{ rower.pw_an|add:100|round100|majorticks }}; + poweroptions.max = {{ workout.user.pw_an|add:100|round100 }}; + poweroptions.greenFrom = {{ workout.user.pw_ut2 }}; + poweroptions.greenTo = {{ workout.user.pw_at }}; + poweroptions.yellowFrom = {{ workout.user.pw_at }}; + poweroptions.yellowTo = {{ workout.user.pw_an }}; + poweroptions.redFrom = {{ workout.user.pw_an }}; + poweroptions.redTo = {{ workout.user.pw_an|add:100|round100 }}; + poweroptions.majorTicks = {{ workout.user.pw_an|add:100|round100|majorticks }}; {% if workout.workouttype == 'water' %} - poweroptions.max = {{ rower.pw_an|waterpower:rower|add:100|round100 }} - poweroptions.greenFrom = {{ rower.pw_ut2|waterpower:rower }}; - poweroptions.greenTo = {{ rower.pw_at|waterpower:rower }}; - poweroptions.yellowFrom = {{ rower.pw_at|waterpower:rower }}; - poweroptions.yellowTo = {{ rower.pw_an|waterpower:rower }}; - poweroptions.redFrom = {{ rower.pw_an|waterpower:rower }}; - poweroptions.redTo = {{ rower.pw_an|waterpower:rower|add:100|round100 }}; - poweroptions.majorTicks = {{ rower.pw_an|waterpower:rower|add:100|round100|majorticks }}; + poweroptions.max = {{ workout.user.pw_an|waterpower:rower|add:100|round100 }} + poweroptions.greenFrom = {{ workout.user.pw_ut2|waterpower:rower }}; + poweroptions.greenTo = {{ workout.user.pw_at|waterpower:rower }}; + poweroptions.yellowFrom = {{ workout.user.pw_at|waterpower:rower }}; + poweroptions.yellowTo = {{ workout.user.pw_an|waterpower:rower }}; + poweroptions.redFrom = {{ workout.user.pw_an|waterpower:rower }}; + poweroptions.redTo = {{ workout.user.pw_an|waterpower:rower|add:100|round100 }}; + poweroptions.majorTicks = {{ workout.user.pw_an|waterpower:rower|add:100|round100|majorticks }}; {% endif %} power_now = power_values[0]; set_forcepower(); {% endif %} {% if 'athlete' in metricsgroups %} - hroptions.max = {{ rower.max|round20 }} - hroptions.greenFrom = {{ rower.ut2 }} - hroptions.greenTo = {{ rower.at }} - hroptions.yellowFrom = {{ rower.at }} - hroptions.yellowTo = {{ rower.an }} - hroptions.redFrom = {{ rower.an }} - hroptions.redTo = {{ rower.max }} - hroptions.majorTicks = {{ rower.max|round20|hrmajorticks:rower.rest }} + hroptions.max = {{ workout.user.max|round20 }} + hroptions.greenFrom = {{ workout.user.ut2 }} + hroptions.greenTo = {{ workout.user.at }} + hroptions.yellowFrom = {{ workout.user.at }} + hroptions.yellowTo = {{ workout.user.an }} + hroptions.redFrom = {{ workout.user.an }} + hroptions.redTo = {{ workout.user.max }} + hroptions.majorTicks = {{ workout.user.max|round20|hrmajorticks:workout.user.rest }} hr_now = hr_values[0]; set_athlete(); {% endif %} diff --git a/rowers/templatetags/rowerfilters.py b/rowers/templatetags/rowerfilters.py index b7f3be2f..48b5afde 100644 --- a/rowers/templatetags/rowerfilters.py +++ b/rowers/templatetags/rowerfilters.py @@ -127,11 +127,17 @@ def waterpower(x,rower): @register.filter def round20(x): - return int(20.*(1+int(int(x)/20))) + try: + return int(20.*(1+int(int(x)/20))) + except ValueError: + return 20 @register.filter def round100(x): - return int(100.*(1+int(int(x)/100))) + try: + return int(100.*(1+int(int(x)/100))) + except ValueError: + return 100 @register.filter def majorticks(maxval):