Show monthly stats in calendar view

This commit is contained in:
Peter Stockings
2026-02-01 10:55:28 +11:00
parent a59cef5c95
commit bc2a350e90
3 changed files with 46 additions and 2 deletions

View File

@@ -212,6 +212,25 @@ def get_calendar(person_id):
# Add view-specific data
if selected_view == 'month':
calendar_view_data['days'] = _process_workouts_for_month_view(grouped_workouts, start_date, end_date, selected_date)
# Calculate summary stats for the selected month
total_workouts = 0
total_sets = 0
unique_exercises = set()
for workout_date, workouts in grouped_workouts.items():
if workout_date.month == selected_date.month and workout_date.year == selected_date.year:
total_workouts += len(workouts)
for workout in workouts.values():
total_sets += len(workout.get('sets', []))
for topset in workout.get('sets', []):
if topset.get('exercise_name'):
unique_exercises.add(topset.get('exercise_name'))
calendar_view_data['summary_stats'] = {
'total_workouts': total_workouts,
'total_sets': total_sets,
'total_exercises': len(unique_exercises)
}
elif selected_view == 'year':
calendar_view_data['months'] = _process_workouts_for_year_view(grouped_workouts, selected_date)