From 27c27b74a0722c0b5aea424a7eee445433fd8b58 Mon Sep 17 00:00:00 2001 From: Peter Stockings Date: Tue, 21 Mar 2023 11:48:55 +1100 Subject: [PATCH] Add total sets and average sets per workout to stats --- utils.py | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/utils.py b/utils.py index d020cdf..8a1f129 100644 --- a/utils.py +++ b/utils.py @@ -102,7 +102,8 @@ def get_stats_from_topsets(topsets): workout_start_dates = [t['StartDate'] for t in topsets if t['StartDate'] is not None] - stats = [{"Text": "Total Workouts", "Value": workout_count}] + stats = [{"Text": "Total Workouts", "Value": workout_count}, + {"Text": "Total Sets", "Value": len(topsets)}] if people_count > 1: stats.append({"Text": "People tracked", "Value": people_count}) if workout_count > 0: @@ -115,11 +116,15 @@ def get_stats_from_topsets(topsets): stats.append({"Text": "Days Since Last Workout", "Value": ( date.today() - last_workout_date).days}) + average_number_sets_per_workout = round( + len(topsets) / workout_count, 1) + stats.append({"Text": "Average sets per workout", + "Value": average_number_sets_per_workout}) training_duration = last_workout_date - first_workout_date if training_duration > timedelta(days=0): average_workouts_per_week = round( - workout_count / (training_duration.days / 7), 2) + workout_count / (training_duration.days / 7), 1) stats.append({"Text": "Average Workouts Per Week", "Value": average_workouts_per_week})