From 55149c5ea9c7fe50e38b0cb4ec47f8548cf53000 Mon Sep 17 00:00:00 2001 From: Peter Stockings Date: Sat, 1 Feb 2025 19:48:56 +1100 Subject: [PATCH] Switch stats from camel case to snake case --- features/stats.py | 52 +++++++++++++++++------------------ templates/partials/stats.html | 4 +-- 2 files changed, 28 insertions(+), 28 deletions(-) diff --git a/features/stats.py b/features/stats.py index 5e2cc6a..20aeec3 100644 --- a/features/stats.py +++ b/features/stats.py @@ -11,10 +11,10 @@ class Stats: return [] # Extract necessary fields - workout_ids = [t["WorkoutId"] for t in topsets if t["WorkoutId"]] - person_ids = [t["PersonId"] for t in topsets if t["PersonId"]] - start_dates = [t["StartDate"] for t in topsets if t["StartDate"]] - exercise_ids = [t["ExerciseId"] for t in topsets if t["ExerciseId"]] + workout_ids = [t["workout_id"] for t in topsets if t["workout_id"]] + person_ids = [t["person_id"] for t in topsets if t["person_id"]] + start_dates = [t["start_date"] for t in topsets if t["start_date"]] + exercise_ids = [t["exercise_id"] for t in topsets if t["exercise_id"]] workout_count = len(set(workout_ids)) people_count = len(set(person_ids)) @@ -24,8 +24,8 @@ class Stats: # Group sets by workout and exercise sets_per_exercise_per_workout = defaultdict(lambda: defaultdict(int)) for t in topsets: - if t["WorkoutId"] and t["ExerciseId"]: - sets_per_exercise_per_workout[t["WorkoutId"]][t["ExerciseId"]] += 1 + if t["workout_id"] and t["exercise_id"]: + sets_per_exercise_per_workout[t["workout_id"]][t["exercise_id"]] += 1 # Calculate the average sets per exercise across all workouts total_sets_per_exercise = [] @@ -37,8 +37,8 @@ class Stats: # Group exercises by workout exercises_by_workout = defaultdict(set) for t in topsets: - if t["WorkoutId"] and t["ExerciseId"]: - exercises_by_workout[t["WorkoutId"]].add(t["ExerciseId"]) + if t["workout_id"] and t["exercise_id"]: + exercises_by_workout[t["workout_id"]].add(t["exercise_id"]) # Calculate average exercises per workout average_exercises_per_workout = round( @@ -47,40 +47,40 @@ class Stats: # Stats stats = [ - {"Text": "Total Workouts", "Value": workout_count}, - {"Text": "Total Sets", "Value": total_sets}, - {"Text": "Average Sets Per Exercise", "Value": average_sets_per_exercise} + {"text": "Total Workouts", "value": workout_count}, + {"text": "Total Sets", "value": total_sets}, + {"text": "Average Sets Per Exercise", "value": average_sets_per_exercise} ] if exercise_count > 1: - stats.append({"Text": "Total Exercises", "Value": exercise_count}) - stats.append({"Text": "Average Exercises Per Workout", "Value": average_exercises_per_workout}) + stats.append({"text": "Total Exercises", "value": exercise_count}) + stats.append({"text": "Average Exercises Per Workout", "value": average_exercises_per_workout}) if people_count > 1: - stats.append({"Text": "People Tracked", "Value": people_count}) + stats.append({"text": "People Tracked", "value": people_count}) if workout_count > 0: first_workout_date = min(start_dates) last_workout_date = max(start_dates) current_date = date.today() - stats.append({"Text": "Days Since First Workout", - "Value": (current_date - first_workout_date).days}) + stats.append({"text": "Days Since First Workout", + "value": (current_date - first_workout_date).days}) if workout_count >= 2: - stats.append({"Text": "Days Since Last Workout", - "Value": (current_date - last_workout_date).days}) + stats.append({"text": "Days Since Last Workout", + "value": (current_date - last_workout_date).days}) average_sets_per_workout = round(total_sets / workout_count, 1) - stats.append({"Text": "Average Sets Per Workout", - "Value": average_sets_per_workout}) + stats.append({"text": "Average Sets Per Workout", + "value": average_sets_per_workout}) training_duration = last_workout_date - first_workout_date if training_duration.days > 0: average_workouts_per_week = round( workout_count / (training_duration.days / 7), 1) - stats.append({"Text": "Average Workouts Per Week", - "Value": average_workouts_per_week}) + stats.append({"text": "Average Workouts Per Week", + "value": average_workouts_per_week}) return stats @@ -88,10 +88,10 @@ class Stats: # Base query query = """ SELECT - t.workout_id AS "WorkoutId", - w.person_id AS "PersonId", - w.start_date AS "StartDate", - e.exercise_id AS "ExerciseId" + t.workout_id, + w.person_id, + w.start_date, + e.exercise_id FROM topset t JOIN workout w ON t.workout_id = w.workout_id diff --git a/templates/partials/stats.html b/templates/partials/stats.html index 1ff493f..3ed5b13 100644 --- a/templates/partials/stats.html +++ b/templates/partials/stats.html @@ -5,8 +5,8 @@
{{ - stat['Value'] }} -

{{ stat['Text'] }}

+ stat.value }} +

{{ stat.text }}