From 66ce7b42ac582146f5497b9c9079a70643ea392f Mon Sep 17 00:00:00 2001 From: Ross Date: Mon, 11 Dec 2023 10:58:00 +0000 Subject: [PATCH] improve trainee page --- generic/templates/generic/trainees.html | 67 +++++++++++++++++++------ generic/views.py | 2 +- 2 files changed, 54 insertions(+), 15 deletions(-) diff --git a/generic/templates/generic/trainees.html b/generic/templates/generic/trainees.html index 7f23e24f..5b16de3d 100644 --- a/generic/templates/generic/trainees.html +++ b/generic/templates/generic/trainees.html @@ -5,25 +5,64 @@ {% endblock %} {% block content %} -All, + All, {% for i in "123456"|make_list %} - ST{{i}}{% if not forloop.last %}, {% endif %} + ST{{i}}{% if not forloop.last %}, {% endif %} {% endfor %} -

-{% if grade %} -{{grade}} -{% endif %}Trainees +

+ {% if grade %} + {{grade}} + {% endif %}Trainees

- - +
NameGradeEmailSupervisorEdit
+ -{% for trainee in trainees %} - -{% endfor %} + {% for trainee in trainees %} + + + + + + + + {% endfor %} -
NameGradeEmailSupervisorEdit
{{trainee.user.first_name}} {{trainee.user.last_name}}{{trainee.grade}}{{trainee.user.email}}{{trainee.supervisor}}User/Profile
{{trainee.user.first_name}} {{trainee.user.last_name}}{{trainee.grade}}{% if not trainee.grade %} + add + {% endif %} + {{trainee.user.email}}{{trainee.supervisor}}{% if not trainee.supervisor %} + add + {% endif %} + User/Profile
- -
Count: {{trainees|length}}
+ +
Count: {{trainees|length}}
+ + {% endblock %} + diff --git a/generic/views.py b/generic/views.py index 4ce7e073..b3b25758 100644 --- a/generic/views.py +++ b/generic/views.py @@ -3077,7 +3077,7 @@ def exam_inactive(request, context): @user_is_cid_user_manager def trainees(request, grade: None|str=None): - trainees = UserProfile.objects.filter(peninsula_trainee=True, user__is_active=True).order_by("grade__name", Lower("user__last_name")) + trainees = UserProfile.objects.filter(peninsula_trainee=True, user__is_active=True).order_by("grade__name", Lower("user__last_name")).prefetch_related("supervisor", "grade", "user") if grade is not None: trainees = trainees.filter(grade__name=grade)