From 97d59d338f243b8ed77a4f6142fbdce90f82163c Mon Sep 17 00:00:00 2001 From: Ross Date: Sat, 7 Sep 2024 08:50:04 +0100 Subject: [PATCH] update trainee management --- generic/filters.py | 2 + generic/tables.py | 11 ++- .../templates/generic/supervisor_list.html | 4 +- generic/templates/generic/trainees.html | 90 ++++++++++++------- 4 files changed, 73 insertions(+), 34 deletions(-) diff --git a/generic/filters.py b/generic/filters.py index 065faeb5..e2910fe4 100644 --- a/generic/filters.py +++ b/generic/filters.py @@ -95,6 +95,8 @@ class SupervisorFilter(django_filters.FilterSet): fields = { "name": ["contains"], "email": ["contains"], + "active": ["exact"], + "site": ["exact"], } def __init__( diff --git a/generic/tables.py b/generic/tables.py index d869414d..7cb64b08 100644 --- a/generic/tables.py +++ b/generic/tables.py @@ -307,9 +307,18 @@ class ExaminationTable(tables.Table): sequence = ("examination",) class SupervisorTable(tables.Table): + name = tables.Column( + linkify=("generic:supervisor_detail", {"pk": tables.A("pk")}), + verbose_name="Name", + ) + + edit = tables.LinkColumn( + "generic:supervisor_edit", text="Edit", args=[A("pk")], orderable=False + ) class Meta: model = Supervisor template_name = "django_tables2/bootstrap4.html" - sequence = ("name", "email") \ No newline at end of file + sequence = ("name", "email") + exclude = ("id",) \ No newline at end of file diff --git a/generic/templates/generic/supervisor_list.html b/generic/templates/generic/supervisor_list.html index bb15e8a6..026ca4e4 100755 --- a/generic/templates/generic/supervisor_list.html +++ b/generic/templates/generic/supervisor_list.html @@ -18,13 +18,13 @@ {% render_table table %} - {% endcomment %} {% endblock %} diff --git a/generic/templates/generic/trainees.html b/generic/templates/generic/trainees.html index 7aafa2fe..f7292bcc 100644 --- a/generic/templates/generic/trainees.html +++ b/generic/templates/generic/trainees.html @@ -16,42 +16,62 @@ {{grade}} {% endif %}Trainees - - - - {% for trainee in trainees %} - - - - - - - + +
NameGradeEmailSupervisorEdit
{{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 - -
+ + + + - {% endfor %} -
NameGradeEmailSupervisorEditBulk Edit
+ Toggle All +
+ {% for trainee in trainees %} + + {{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 + + + + + + + + {% endfor %} + + +
Count: {{trainees|length}}
+ + +