diff --git a/templates/objectives/skills/tree.html b/templates/objectives/skills/tree.html index baf9c4325c..7ff575cce0 100644 --- a/templates/objectives/skills/tree.html +++ b/templates/objectives/skills/tree.html @@ -1,108 +1,179 @@ {% extends "base.html" %} +{% block header %} + +{% endblock %} + {% block content %}
-
-

{{ skill.short_label }}

-

{{ skill.notation }}

-
-
-
-
- -
-
-

Notation : {{ skill.notation }}

-
-
-

Difficulty : {{ skill.difficulty }}

-
-
-

Level : {{ skill.level }}

-
-
-

Rank : {{ skill.level }}

- - -
-
-
- -
- {% if skill.prerequisites.all or skill.educatives.all %} -
-
-

Prerequisites

-
    - {% if skill.prerequisites.all %} - {% for prerequisites in skill.prerequisites.all %} -
  • {{ prerequisites.short_label }}
  • - {% endfor %} - {% else %} -

    No prerequisites defined.

    - {% endif %} -
-
-
-

Educatives

-
    - {% if skill.educatives.all %} - {% for educatives in skill.educatives.all %} -
  • {{ educatives.short_label }}
  • - {% endfor %} - {% else %} -

    No educative defined.

    - {% endif %} -
-
-
- {% endif %} -
-
-

From {{ skill.departure }}, {% if skill.rotation %} {{ skill.rotation }} quart of {{ skill.get_rotation_type_display }} rotation {% endif %}{% if skill.twist %} with {{ skill.twist }} half-twist {% endif %} in a {{ skill.get_position_display }} position, landing to {{ skill.landing }}

-
- {% if skill.informations %} - {{ skill.to_markdown | safe }} - {% else %} -

No more informations provided for this skill.

- {% endif %} -
-
-
+
- {% endblock %} {% block footerscript %} + + + {% endblock %} diff --git a/ultron/objective/urls.py b/ultron/objective/urls.py index 0a9172ca11..80080ed6fc 100644 --- a/ultron/objective/urls.py +++ b/ultron/objective/urls.py @@ -10,7 +10,8 @@ skill_urlpatterns = [ ), path(r"lookup/", views.skill_lookup), path(r"search/", views.skill_listing), - path(r"/", views.skill_details, name="skill_details"), + path(r"/", views.skill_details, name="skill_details"), + path(r"/tree/", views.skill_tree, name="skill_tree"), path(r"", views.skill_listing, name="skill_list"), ] diff --git a/ultron/objective/views.py b/ultron/objective/views.py index 1f17d02798..d306aa3b01 100644 --- a/ultron/objective/views.py +++ b/ultron/objective/views.py @@ -66,27 +66,32 @@ def skill_listing(request, field=None, expression=None, value=None, level=None): @login_required @require_http_methods(["GET"]) -def skill_details(request, skillid): +def skill_tree(request, skill_id): + """ + """ + skill = get_object_or_404(Skill, pk=skill_id) + context = {"skill": skill} + return render(request, "objectives/skills/tree.html", context) + + +@login_required +@require_http_methods(["GET"]) +def skill_details(request, skill_id): """Récupère toutes les informations d'un skill. La méthode en profite pour vérifier les champs level, rank, age_boy et age_girl par rapport aux pré-requis. - :param skillig: id d'un `skill` - :type skillid: int + :param skill_id: id d'un `skill` + :type skill_id: int :return: skill """ - skill = get_object_or_404(Skill, pk=skillid) + skill = get_object_or_404(Skill, pk=skill_id) for prerequisite in skill.prerequisites.all(): skill.level = max(prerequisite.level + 1, skill.level) - # if prerequisite.level >= skill.level: - # skill.level = prerequisite.level + 1 - skill.rank = max(prerequisite.rank + 1, skill.rank) - # if prerequisite.rank >= skill.rank: - # skill.rank = prerequisite.rank + 1 skill.age_boy_with_help = max(skill.age_boy_with_help, prerequisite.age_boy_with_help) skill.age_boy_without_help = max( @@ -95,8 +100,6 @@ def skill_details(request, skillid): ) skill.age_boy_chained = max(skill.age_boy_chained, prerequisite.age_boy_chained) skill.age_boy_masterised = max(skill.age_boy_masterised, prerequisite.age_boy_masterised) - # if prerequisite.age_boy > skill.age_boy: - # skill.age_boy = prerequisite.age_boy skill.age_girl_with_help = max(skill.age_girl_with_help, prerequisite.age_girl_with_help) skill.age_girl_without_help = max( @@ -105,8 +108,6 @@ def skill_details(request, skillid): ) skill.age_girl_chained = max(skill.age_girl_chained, prerequisite.age_girl_chained) skill.age_girl_masterised = max(skill.age_girl_masterised, prerequisite.age_girl_masterised) - # if prerequisite.age_girl > skill.age_girl: - # skill.age_girl = prerequisite.age_girl skill.save()