2023-06-19 20:41:14 +02:00
{% load static %}
<!DOCTYPE html>
< html >
< head >
< meta charset = "UTF-8" >
< meta name = "keywords" content = "" >
< meta name = "description" content = "" >
< meta name = "author" content = "Gregory Trullemans" >
< meta http-equiv = "X-UA-Compatible" content = "IE=edge" >
< meta http-equiv = "content-type" content = "text/html; charset=UTF-8" >
< meta name = "viewport" content = "width=device-width, initial-scale=1, shrink-to-fit=no" >
< link rel = "apple-touch-icon" sizes = "76x76" href = "{% static " img / apple-icon . png " % } " >
< link rel = "icon" type = "image/png" href = "{% static " img / favicon . png " % } " >
< title > {{ gymnast.first_name }} {{ gymnast.last_name }}< / title >
<!-- Fonts and icons -->
< link href = "https://fonts.googleapis.com/css?family=Poppins:200,300,400,600,700,800" rel = "stylesheet" / >
<!-- Font Awesome Pro -->
< link href = "{% static " css / gymnast_report . css " % } " rel = "stylesheet" / >
< link href = "{% static " css / font_awesome_all_5 . 15 . 3 . css " % } " rel = "stylesheet" / >
< link href = "{% static " css / black-dashboard_report . css " % } " rel = "stylesheet" / >
< / head >
< header class = "white-content" >
< div class = "row" >
< div id = "header-left" class = "col-7 text-12" >
{{ SITE_TITLE }} - {{ CLUB_NAME }}< br / >
{{ ADDRESS }} - {{ ZIP }} {{ CITY }}< br / >
Season {{ season }}{% if period != "season" %} - {% if period == "week" %}week{% endif %} {{ period_value }}{% endif %} ({{ date_begin | date:"j N Y" }} - {{ date_end | date:"j N Y" }})
< / div >
< div id = "header-right" class = "col-5 text-right text-12" >
Head Coach : {{ HEAD_COACH }}< br / >
{{ HEAD_COACH_EMAIL }}< br / >
{{ today | date:"j F Y" }}
< / div >
< / div >
< / header >
< br / >
< body class = "white-content" >
< div class = "row" >
< div class = "col-2" >
< img src = "{% static 'img/default-avatar.png' %}" class = "profil_img" / >
< / div >
2023-06-19 21:11:15 +02:00
< div class = "col-9" style = "text-align: justify;" >
2023-06-19 20:41:14 +02:00
< h3 class = "title mb-0" > {{ gymnast.first_name }} {{ gymnast.last_name }}< / h3 >
< p class = "mb-3 text-muted" > {{ gymnast.age }} years - {% if gymnast.orientation %}{{ gymnast.get_orientation_display }}{% else %}unknown{% endif %} twisting side.< br / >
{{season_informations.number_of_hours_per_week}}h training ({{ season_informations.number_of_training_sessions_per_week }}/w) - {{ season_informations.number_of_s_and_c_hours_per_week}}h S& C ({{ season_informations.number_of_s_and_c_sessions_per_week }}/w)< br / >
< b > {{ season_informations.get_category_display }}< / b >
< / p >
{% if gymnast.informations %}
{{ gymnast.to_markdown | safe }}
{% endif %}
< / div >
< / div >
< div class = "row" >
< div class = "col-4" >
< h4 class = "mb-1" > Physiological< / h4 >
2023-07-05 12:27:23 +02:00
{% if wellbeing_score.mean_mindstate_value or height_weight_value.mean_height_value %}
2023-06-19 20:41:14 +02:00
< table class = "table" >
< thead >
< th class = "pt-0 pb-0" > < / th >
< th class = "pt-0 pb-0 text-right" > Min< / th >
< th class = "pt-0 pb-0 text-right" > Average< / th >
< th class = "pt-0 pb-0 text-right" > Max< / th >
< / thead >
2023-07-05 12:27:23 +02:00
{% if wellbeing_score %}
2023-06-19 20:41:14 +02:00
< tr >
< td class = "pt-0 pb-0" > < b > Mind state< / b > < / td >
2023-07-05 12:27:23 +02:00
< td class = "pt-0 pb-0 text-right" > {{ wellbeing_score.min_mindstate_value }}< / td >
< td class = "pt-0 pb-0 text-right" > {{ wellbeing_score.mean_mindstate_value|stringformat:".1f" }}< / td >
< td class = "pt-0 pb-0 text-right" > {{ wellbeing_score.max_mindstate_value }}< / td >
< / tr >
< tr >
< td class = "pt-0 pb-0" > < b > Sleep< / b > < / td >
< td class = "pt-0 pb-0 text-right" > {{ wellbeing_score.min_sleep_value }}< / td >
< td class = "pt-0 pb-0 text-right" > {{ wellbeing_score.mean_sleep_value|stringformat:".1f" }}< / td >
< td class = "pt-0 pb-0 text-right" > {{ wellbeing_score.max_sleep_value }}< / td >
< / tr >
< tr >
< td class = "pt-0 pb-0" > < b > Stress< / b > < / td >
< td class = "pt-0 pb-0 text-right" > {{ wellbeing_score.min_stress_value }}< / td >
< td class = "pt-0 pb-0 text-right" > {{ wellbeing_score.mean_stress_value|stringformat:".1f" }}< / td >
< td class = "pt-0 pb-0 text-right" > {{ wellbeing_score.max_stress_value }}< / td >
< / tr >
< tr >
< td class = "pt-0 pb-0" > < b > Fatigue< / b > < / td >
< td class = "pt-0 pb-0 text-right" > {{ wellbeing_score.min_fatigue_value }}< / td >
< td class = "pt-0 pb-0 text-right" > {{ wellbeing_score.mean_fatigue_value|stringformat:".1f" }}< / td >
< td class = "pt-0 pb-0 text-right" > {{ wellbeing_score.max_fatigue_value }}< / td >
< / tr >
< tr >
< td class = "pt-0 pb-0" > < b > Muscle soreness< / b > < / td >
< td class = "pt-0 pb-0 text-right" > {{ wellbeing_score.min_muscle_soreness_value }}< / td >
< td class = "pt-0 pb-0 text-right" > {{ wellbeing_score.mean_muscle_soreness_value|stringformat:".1f" }}< / td >
< td class = "pt-0 pb-0 text-right" > {{ wellbeing_score.max_muscle_soreness_value }}< / td >
2023-06-19 20:41:14 +02:00
< / tr >
{% endif %}
{% if height_weight_value.mean_height_value %}
< tr >
< td class = "pt-0 pb-0" > < b > Height< / b > < / td >
< td class = "pt-0 pb-0 text-right" > {{ height_weight_value.min_height_value }}< / td >
< td class = "pt-0 pb-0 text-right" > {{ height_weight_value.mean_height_value|stringformat:".1f" }}< / td >
< td class = "pt-0 pb-0 text-right" > {{ height_weight_value.max_height_value }}< / td >
< / tr >
{% endif %}
{% if height_weight_value.mean_weight_value %}
< tr >
< td class = "pt-0 pb-0" > < b > Weight< / b > < / td >
< td class = "pt-0 pb-0 text-right" > {{ height_weight_value.min_weight_value }}< / td >
< td class = "pt-0 pb-0 text-right" > {{ height_weight_value.mean_weight_value|stringformat:".1f" }}< / td >
< td class = "pt-0 pb-0 text-right" > {{ height_weight_value.max_weight_value }}< / td >
< / tr >
{% endif %}
< / table >
2023-06-19 21:11:15 +02:00
{% else %}
No information for selected week.
2023-06-19 20:41:14 +02:00
{% endif %}
< / div >
< div class = "col-4" >
< h4 class = "mb-1" > Intensity< / h4 >
2023-06-19 21:11:15 +02:00
{% if intensity_value.mean_intensity_time_value %}
2023-06-19 20:41:14 +02:00
< table class = "table" >
< thead >
< th class = "pt-0 pb-0 text-right" > < / th >
< th class = "pt-0 pb-0 text-right" > Min< / th >
< th class = "pt-0 pb-0 text-right" > Average< / th >
< th class = "pt-0 pb-0 text-right" > Max< / th >
< / thead >
< tbody >
< tr >
< td class = "pt-0 pb-0" > < b > Time< / b > < / td >
< td class = "pt-0 pb-0 text-right" > {{ intensity_value.min_intensity_time_value }}< / td >
< td class = "pt-0 pb-0 text-right" > {{ intensity_value.mean_intensity_time_value|stringformat:".0f" }}< / td >
< td class = "pt-0 pb-0 text-right" > {{ intensity_value.max_intensity_time_value }}< / td >
< / tr >
< tr >
< td class = "pt-0 pb-0" > < b > Diff.< / b > < / td >
< td class = "pt-0 pb-0 text-right" > {{ intensity_value.min_intensity_difficulty_value }}< / td >
< td class = "pt-0 pb-0 text-right" > {{ intensity_value.mean_intensity_difficulty_value|stringformat:".0f" }}< / td >
< td class = "pt-0 pb-0 text-right" > {{ intensity_value.max_intensity_difficulty_value }}< / td >
< / tr >
< tr >
< td class = "pt-0 pb-0" > < b > # Skill< / b > < / td >
< td class = "pt-0 pb-0 text-right" > {{ intensity_value.min_quantity_of_skill_value }}< / td >
< td class = "pt-0 pb-0 text-right" > {{ intensity_value.mean_quantity_of_skill_value|stringformat:".0f" }}< / td >
< td class = "pt-0 pb-0 text-right" > {{ intensity_value.max_quantity_of_skill_value }}< / td >
< / tr >
< tr >
< td class = "pt-0 pb-0" > < b > # Passes< / b > < / td >
< td class = "pt-0 pb-0 text-right" > {{ intensity_value.min_number_of_passes_value }}< / td >
< td class = "pt-0 pb-0 text-right" > {{ intensity_value.mean_number_of_passes_value|stringformat:".0f" }}< / td >
< td class = "pt-0 pb-0 text-right" > {{ intensity_value.max_number_of_passes_value }}< / td >
< / tr >
< / tbody >
< / table >
{% else %}
No intensty for selected period.
{% endif %}
< / div >
< / div >
< br / >
< div class = "row" >
< div class = "col-6" >
< h4 class = "mb-1" > Time of flight< / h4 >
{% if number_of_tof_straightjump or number_of_tof_q1r1 or number_of_tof_q1r2 %}
< table class = "table" >
< thead >
< th class = "pt-0 pb-0" > < / th >
< th class = "pt-0 pb-0" > < / th >
< th class = "pt-0 pb-0 text-right" > Min< / th >
< th class = "pt-0 pb-0 text-right" > Average< / th >
< th class = "pt-0 pb-0 text-right" > Max< / th >
< / thead >
{% if best_tof_straightjump.mean_score %}
< tr >
< td class = "pt-0 pb-0" > < b > 10 |< / b > < / td >
< td class = "pt-0 pb-0" > ({{ number_of_tof_straightjump }})< / td >
< td class = "pt-0 pb-0 text-right" > {{ best_tof_straightjump.min_tof }} ({{ best_tof_straightjump.min_score }})< / td >
< td class = "pt-0 pb-0 text-right" > {{ best_tof_straightjump.mean_tof|stringformat:".3f" }} ({{ best_tof_straightjump.mean_score|stringformat:".3f" }})< / td >
< td class = "pt-0 pb-0 text-right" > {{ best_tof_straightjump.max_tof }} ({{ best_tof_straightjump.max_score }})< / td >
< / tr >
{% endif %}
{% if best_tof_q1r1.mean_score %}
< tr >
< td class = "pt-0 pb-0" > < b > Q1R1< / b > < / td >
< td class = "pt-0 pb-0" > ({{ number_of_tof_q1r1 }})< / td >
< td class = "pt-0 pb-0 text-right" > {{ best_tof_q1r1.min_tof }} ({{ best_tof_q1r1.min_score }})< / td >
< td class = "pt-0 pb-0 text-right" > {{ best_tof_q1r1.mean_tof|stringformat:".3f" }} ({{ best_tof_q1r1.mean_score|stringformat:".3f" }})< / td >
< td class = "pt-0 pb-0 text-right" > {{ best_tof_q1r1.max_tof }} ({{ best_tof_q1r1.max_score }})< / td >
< / tr >
{% endif %}
{% if best_tof_q1r2.mean_score %}
< tr >
< td class = "pt-0 pb-0" > < b > Q1R2< / b > < / td >
< td class = "pt-0 pb-0" > ({{ number_of_tof_q1r2 }})< / td >
< td class = "pt-0 pb-0 text-right" > {{ best_tof_q1r2.min_tof }} ({{ best_tof_q1r2.min_score }})< / td >
< td class = "pt-0 pb-0 text-right" > {{ best_tof_q1r2.mean_tof|stringformat:".3f" }} ({{ best_tof_q1r2.mean_score|stringformat:".3f" }})< / td >
< td class = "pt-0 pb-0 text-right" > {{ best_tof_q1r2.max_tof }} ({{ best_tof_q1r2.max_score }})< / td >
< / tr >
{% endif %}
{% if best_tof_q2r1.mean_score %}
< tr >
< td class = "pt-0 pb-0" > < b > Q2R1< / b > < / td >
< td class = "pt-0 pb-0" > ({{ number_of_tof_q2r1 }})< / td >
< td class = "pt-0 pb-0 text-right" > {{ best_tof_q2r1.min_tof }} ({{ best_tof_q2r1.min_score }})< / td >
< td class = "pt-0 pb-0 text-right" > {{ best_tof_q2r1.mean_tof|stringformat:".3f" }} ({{ best_tof_q2r1.mean_score|stringformat:".3f" }})< / td >
< td class = "pt-0 pb-0 text-right" > {{ best_tof_q2r1.max_tof }} ({{ best_tof_q2r1.max_score }})< / td >
< / tr >
{% endif %}
{% if best_tof_sf.mean_score %}
< tr >
< td class = "pt-0 pb-0" > < b > SF< / b > < / td >
< td class = "pt-0 pb-0" > ({{ number_of_tof_sf }})< / td >
< td class = "pt-0 pb-0 text-right" > {{ best_tof_sf.min_tof }} ({{ best_tof_sf.min_score }})< / td >
< td class = "pt-0 pb-0 text-right" > {{ best_tof_sf.mean_tof|stringformat:".3f" }} ({{ best_tof_sf.mean_score|stringformat:".3f" }})< / td >
< td class = "pt-0 pb-0 text-right" > {{ best_tof_sf.max_tof }} ({{ best_tof_sf.max_score }})< / td >
< / tr >
{% endif %}
{% if best_tof_f.mean_score %}
< tr >
< td class = "pt-0 pb-0" > < b > F< / b > < / td >
< td class = "pt-0 pb-0" > ({{ number_of_tof_f }})< / td >
< td class = "pt-0 pb-0 text-right" > {{ best_tof_f.min_tof }} ({{ best_tof_f.min_score }})< / td >
< td class = "pt-0 pb-0 text-right" > {{ best_tof_f.mean_tof|stringformat:".3f" }} ({{ best_tof_f.mean_score|stringformat:".3f" }})< / td >
< td class = "pt-0 pb-0 text-right" > {{ best_tof_f.max_tof }} ({{ best_tof_f.max_score }})< / td >
< / tr >
{% endif %}
< / table >
{% else %}
No chrono/ToF found.
{% endif %}
< / div >
< div class = "col-6" >
< h4 class = "mb-1" > Best Scores< / h4 >
{% if best_point_routine_1 or best_point_routine_2 or best_point_routine_3 or best_point_routine_4 or best_point_routine_5 %}
< table class = "table" >
< thead >
< th class = "pt-0 pb-0" > < / th >
< th class = "pt-0 pb-0 text-right" > Exe.< / th >
< th class = "pt-0 pb-0 text-right" > Diff.< / th >
< th class = "pt-0 pb-0 text-right" > HD< / th >
< th class = "pt-0 pb-0 text-right" > ToF< / th >
< th class = "pt-0 pb-0 text-right" > Total< / th >
< th class = "pt-0 pb-0" > < / th >
< / thead >
{% if best_point_routine_1 %}
< tr >
< td class = "pt-0 pb-0" > < b > Q1R1< / b > < / td >
< td class = "pt-0 pb-0 text-right" > {{ best_point_routine_1.point_execution }}< / td >
< td class = "pt-0 pb-0 text-right" > {{ best_point_routine_1.point_difficulty }}< / td >
< td class = "pt-0 pb-0 text-right" > {{ best_point_routine_1.point_horizontal_displacement }}< / td >
< td class = "pt-0 pb-0 text-right" > {{ best_point_routine_1.point_time_of_flight }}< / td >
< td class = "pt-0 pb-0 text-right" > {{ best_point_routine_1.total }}< / td >
< td class = "pt-0 pb-0 text-right" > {{ best_point_routine_1.event.date_begin|date:"j M Y" }}< / td >
< / tr >
{% endif %}
{% if best_point_routine_2 %}
< tr >
< td class = "pt-0 pb-0" > < b > Q1R2< / b > < / td >
< td class = "pt-0 pb-0 text-right" > {{ best_point_routine_2.point_execution }}< / td >
< td class = "pt-0 pb-0 text-right" > {{ best_point_routine_2.point_difficulty }}< / td >
< td class = "pt-0 pb-0 text-right" > {{ best_point_routine_2.point_horizontal_displacement }}< / td >
< td class = "pt-0 pb-0 text-right" > {{ best_point_routine_2.point_time_of_flight }}< / td >
< td class = "pt-0 pb-0 text-right" > {{ best_point_routine_2.total }}< / td >
< td class = "pt-0 pb-0 text-right" > {{ best_point_routine_2.event.date_begin|date:"j M Y" }}< / td >
< / tr >
{% endif %}
{% if best_point_routine_3 %}
< tr >
< td class = "pt-0 pb-0" > < b > Q2R1< / b > < / td >
< td class = "pt-0 pb-0 text-right" > {{ best_point_routine_3.point_execution }}< / td >
< td class = "pt-0 pb-0 text-right" > {{ best_point_routine_3.point_difficulty }}< / td >
< td class = "pt-0 pb-0 text-right" > {{ best_point_routine_3.point_horizontal_displacement }}< / td >
< td class = "pt-0 pb-0 text-right" > {{ best_point_routine_3.point_time_of_flight }}< / td >
< td class = "pt-0 pb-0 text-right" > {{ best_point_routine_3.total }}< / td >
< td class = "pt-0 pb-0 text-right" > {{ best_point_routine_3.event.date_begin|date:"j M Y" }}< / td >
< / tr >
{% endif %}
{% if best_point_routine_4 %}
< tr >
< td class = "pt-0 pb-0" > < b > SF< / b > < / td >
< td class = "pt-0 pb-0 text-right" > {{ best_point_routine_4.point_execution }}< / td >
< td class = "pt-0 pb-0 text-right" > {{ best_point_routine_4.point_difficulty }}< / td >
< td class = "pt-0 pb-0 text-right" > {{ best_point_routine_4.point_horizontal_displacement }}< / td >
< td class = "pt-0 pb-0 text-right" > {{ best_point_routine_4.point_time_of_flight }}< / td >
< td class = "pt-0 pb-0 text-right" > {{ best_point_routine_4.total }}< / td >
< td class = "pt-0 pb-0 text-right" > {{ best_point_routine_4.event.date_begin|date:"j M Y" }}< / td >
< / tr >
{% endif %}
{% if best_point_routine_5 %}
< tr >
< td class = "pt-0 pb-0" > < b > F< / b > < / td >
< td class = "pt-0 pb-0 text-right" > {{ best_point_routine_5.point_execution }}< / td >
< td class = "pt-0 pb-0 text-right" > {{ best_point_routine_5.point_difficulty }}< / td >
< td class = "pt-0 pb-0 text-right" > {{ best_point_routine_5.point_horizontal_displacement }}< / td >
< td class = "pt-0 pb-0 text-right" > {{ best_point_routine_5.point_time_of_flight }}< / td >
< td class = "pt-0 pb-0 text-right" > {{ best_point_routine_5.total }}< / td >
< td class = "pt-0 pb-0 text-right" > {{ best_point_routine_5.event.date_begin|date:"j M Y" }}< / td >
< / tr >
{% endif %}
< / table >
{% else %}
No scores during the selected week.
{% endif %}
< / div >
< / div >
< br / >
< div class = "row" id = "learned_skill_and_plan" >
< div class = "col-6" >
< h4 class = "mb-1" > Last learned skills< / h4 >
{% if learned_skills %}
< table class = "table" >
{% for learned_skill in learned_skills %}
< tr >
< td class = "pt-1 pb-0" > {{ learned_skill.skill.short_label }}< / td >
< td class = "pt-1 pb-0" > ({{ learned_skill.get_learning_step_display }})< / td >
< td class = "pt-1 pb-0" > {{ learned_skill.skill.notation }}< / td >
< td class = "pt-1 pb-0" > {{ learned_skill.date|date:"j M Y" }}< / td >
< / tr >
{% endfor %}
< / table >
{% else %}
No new skill learned on the selected week.
{% endif %}
< / div >
< div class = "col-6" >
< h4 class = "mb-1" > Objectives< / h4 >
{% if plan_list %}
< table class = "table" >
{% for plan in plan_list %}
< tr >
< td class = "pt-1 pb-0" > {{ plan.educative.short_label }}< / td >
< td class = "pt-1 pb-0" > ({{ plan.get_learning_step_display }})< / td >
< td class = "pt-1 pb-0" > {{ plan.skill.notation }}< / td >
< td class = "pt-1 pb-0" > {{ plan.date | date:"j M Y" }}< / td >
< / tr >
{% endfor %}
< / table >
{% else %}
No objective for the selected week.
{% endif %}
< / div >
< / div >
< br / >
< div class = "row" >
< div class = "col-6" >
< h4 class = "mb-1" > Next Events< / h4 >
{% if next_event_list %}
< table class = "table" >
{% for event in next_event_list %}
< tr >
< td class = "pt-1 pb-0" > {{ event.date_begin | date:"j M Y" }}< / td >
< td class = "pt-1 pb-0" > in {{ event.number_of_week_from_today }} week(s)< / td >
< td class = "pt-1 pb-0" > {{ event.name }}< / td >
< / tr >
{% endfor %}
< / table >
{% else %}
No events on the selected week.
{% endif %}
< / div >
< / div >
< br / >
< div class = "row" id = "note" >
< div class = "col-12" >
< h4 class = "mb-1" > Notes< / h4 >
{% if notes %}
{% for note in notes %}
{{ note.to_markdown | safe }}
{% endfor %}
{% else %}
No note for the selected week.
{% endif %}
< / div >
< / div >
< br / >
< div class = "row" id = "Routines" style = "break-before: page;" >
{% if q1r1 or q1r2 or q2r1 or sfinal or final %}
< div class = "col-12" >
< h4 class = "mb-1" > Routines< / h4 >
< / div >
< div class = "col-2" >
< h5 > Q1 routine 1< / h5 >
{% if q1r1 %}
< table class = "table" >
{% for routine_skill in q1r1.routine.skill_links.all %}
< tr >
< td class = "pt-1 pb-0" > {{ routine_skill.skill.notation }}< / td >
< td class = "pt-1 pb-0 text-right" > {{ routine_skill.skill.difficulty }}< / td >
< / tr >
{% endfor %}
< tr >
< td class = "pt-1 pb-0" > < / td >
< td class = "pt-1 pb-0 text-right" > < b > {{ q1r1.routine.difficulty }}< / b > < / td >
< / tr >
< / table >
{% else %}
No routine defined.
{% endif %}
{% if q1r1_done_stat.total_succeeded %}
{{ q1r1_done_stat.total_succeeded }} | {{ q1r1_done_stat.total_try }} ({% widthratio q1r1_done_stat.total_succeeded q1r1_done_stat.total_try 100 %}%)
{% endif %}
< / div >
< div class = "col-2" >
< h5 > Q1 routine 2< / h5 >
{% if q1r2 %}
< table class = "table" >
{% for routine_skill in q1r2.routine.skill_links.all %}
< tr >
< td class = "pt-1 pb-0" > {{ routine_skill.skill.notation }}< / td >
< td class = "pt-1 pb-0 text-right" > {{ routine_skill.skill.difficulty }}< / td >
< / tr >
{% endfor %}
< tr >
< td class = "pt-1 pb-0" > < / td >
< td class = "pt-1 pb-0 text-right" > < b > {{ q1r2.routine.difficulty }}< / b > < / td >
< / tr >
< / table >
{% else %}
No routine defined.
{% endif %}
{% if q1r2_done_stat.total_succeeded %}
{{ q1r2_done_stat.total_succeeded }} | {{ q1r2_done_stat.total_try }} ({% widthratio q1r2_done_stat.total_succeeded q1r2_done_stat.total_try 100 %}%)
{% endif %}
< / div >
< div class = "col-2" >
< h5 > Q2 routine 1< / h5 >
{% if q2r1 %}
< table class = "table" >
{% for routine_skill in q2r1.routine.skill_links.all %}
< tr >
< td class = "pt-1 pb-0" > {{ routine_skill.skill.notation }}< / td >
< td class = "pt-1 pb-0 text-right" > {{ routine_skill.skill.difficulty }}< / td >
< / tr >
{% endfor %}
< tr >
< td class = "pt-1 pb-0" > < / td >
< td class = "pt-1 pb-0 text-right" > < b > {{ q2r1.routine.difficulty }}< / b > < / td >
< / tr >
< / table >
{% else %}
No routine defined.
{% endif %}
{% if q2r1_done_stat.total_succeeded %}
{{ q2r1_done_stat.total_succeeded }} | {{ q2r1_done_stat.total_try }} ({% widthratio q2r1_done_stat.total_succeeded q2r1_done_stat.total_try 100 %}%)
{% endif %}
< / div >
< div class = "col-2" >
< h5 > Semi-final routine< / h5 >
{% if sfinal %}
< table class = "table" >
{% for routine_skill in sfinal.routine.skill_links.all %}
< tr >
< td class = "pt-1 pb-0" > {{ routine_skill.skill.notation }}< / td >
< td class = "pt-1 pb-0 text-right" > {{ routine_skill.skill.difficulty }}< / td >
< / tr >
{% endfor %}
< tr >
< td class = "pt-1 pb-0" > < / td >
< td class = "pt-1 pb-0 text-right" > < b > {{ sfinal.routine.difficulty }}< / b > < / td >
< / tr >
< / table >
{% else %}
No routine defined.
{% endif %}
{% if sfinal_done_stat.total_succeeded %}
{{ sfinal_done_stat.total_succeeded }} | {{ sfinal_done_stat.total_try }} ({% widthratio sfinal_done_stat.total_succeeded sfinal_done_stat.total_try 100 %}%)
{% endif %}
< / div >
< div class = "col-2" >
< h5 > Final routine< / h5 >
{% if final %}
< table class = "table" >
{% for routine_skill in final.routine.skill_links.all %}
< tr >
< td class = "pt-1 pb-0" > {{ routine_skill.skill.notation }}< / td >
< td class = "pt-1 pb-0 text-right" > {{ routine_skill.skill.difficulty }}< / td >
< / tr >
{% endfor %}
< tr >
< td class = "pt-1 pb-0" > < / td >
< td class = "pt-1 pb-0 text-right" > < b > {{ final.routine.difficulty }}< / b > < / td >
< / tr >
< / table >
{% else %}
No routine defined.
{% endif %}
{% if final_done_stat.total_succeeded %}
{{ final_done_stat.total_succeeded }} | {{ final_done_stat.total_try }} ({% widthratio final_done_stat.total_succeeded final_done_stat.total_try 100 %}%)
{% endif %}
< / div >
{% endif %}
< / div >
< / div >
< / body >
< / html >