Add 'Machine vs Free Weight' & 'Compound vs Isolation' breakdowns for workouts
This commit is contained in:
@@ -124,8 +124,10 @@ def _get_workout_view_model(person_id, workout_id):
|
||||
# Sort tags alphabetically by name for consistent display
|
||||
workout_data["tags"].sort(key=lambda x: x.get('tag_name', ''))
|
||||
|
||||
# Add muscle group distribution
|
||||
workout_data["muscle_distribution"] = db.exercises.get_workout_muscle_group_distribution(workout_id)
|
||||
# Add multi-category breakdowns
|
||||
workout_data["muscle_distribution"] = db.exercises.get_workout_attribute_distribution(workout_id, 'Muscle Group')
|
||||
workout_data["equipment_distribution"] = db.exercises.get_workout_attribute_distribution(workout_id, 'Machine vs Free Weight')
|
||||
workout_data["movement_distribution"] = db.exercises.get_workout_attribute_distribution(workout_id, 'Compound vs Isolation')
|
||||
|
||||
return workout_data
|
||||
|
||||
@@ -182,13 +184,15 @@ def get_workout_start_date(person_id, workout_id):
|
||||
start_date = workout.get('start_date') if workout else None
|
||||
return render_template('partials/start_date.html', person_id=person_id, workout_id=workout_id, start_date=start_date)
|
||||
|
||||
@workout_bp.route("/person/<int:person_id>/workout/<int:workout_id>/muscle_distribution", methods=['GET'])
|
||||
def get_workout_muscle_distribution(person_id, workout_id):
|
||||
distribution = db.exercises.get_workout_muscle_group_distribution(workout_id)
|
||||
@workout_bp.route("/person/<int:person_id>/workout/<int:workout_id>/distribution", methods=['GET'])
|
||||
def get_workout_distribution(person_id, workout_id):
|
||||
category = request.args.get('category', 'Muscle Group')
|
||||
distribution = db.exercises.get_workout_attribute_distribution(workout_id, category)
|
||||
return render_template('partials/workout_breakdown.html',
|
||||
person_id=person_id,
|
||||
workout_id=workout_id,
|
||||
muscle_distribution=distribution)
|
||||
distribution=distribution,
|
||||
category_name=category)
|
||||
|
||||
@workout_bp.route("/person/<int:person_id>/workout/<int:workout_id>/topset/<int:topset_id>/achievements", methods=['GET'])
|
||||
@validate_topset
|
||||
|
||||
Reference in New Issue
Block a user