improve trainee page
This commit is contained in:
@@ -5,25 +5,64 @@
|
|||||||
{% endblock %}
|
{% endblock %}
|
||||||
|
|
||||||
{% block content %}
|
{% block content %}
|
||||||
<a href='{% url "trainees" %}'>All, </a>
|
<a href='{% url "trainees" %}'>All, </a>
|
||||||
{% for i in "123456"|make_list %}
|
{% for i in "123456"|make_list %}
|
||||||
<a href='{% url "trainees_grade" "ST"|add:i %}'>ST{{i}}</a>{% if not forloop.last %}, {% endif %}
|
<a href='{% url "trainees_grade" "ST"|add:i %}'>ST{{i}}</a>{% if not forloop.last %}, {% endif %}
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
|
|
||||||
<h2>
|
<h2>
|
||||||
{% if grade %}
|
{% if grade %}
|
||||||
{{grade}}
|
{{grade}}
|
||||||
{% endif %}Trainees
|
{% endif %}Trainees
|
||||||
</h2>
|
</h2>
|
||||||
<table>
|
<table>
|
||||||
<tr class="header"><th>Name</th><th>Grade</th><th>Email</th><th>Supervisor</th><th>Edit</th></tr>
|
<tr class="header"><th>Name</th><th>Grade</th><th>Email</th><th>Supervisor</th><th>Edit</th></tr>
|
||||||
|
|
||||||
{% for trainee in trainees %}
|
{% for trainee in trainees %}
|
||||||
<tr class="trainee"><td>{{trainee.user.first_name}} {{trainee.user.last_name}}</td><td>{{trainee.grade}}</td><td>{{trainee.user.email}}</td><td>{{trainee.supervisor}}</td><td><a href="{% url 'account_update' trainee.user.username %}">User</a>/<a href="{% url 'account_profile_update' trainee.user.username %}">Profile</a></td></tr>
|
<tr class="trainee">
|
||||||
{% endfor %}
|
<td>{{trainee.user.first_name}} {{trainee.user.last_name}}</td>
|
||||||
|
<td
|
||||||
|
{% if not trainee.grade %}
|
||||||
|
class="no-grade"
|
||||||
|
{% endif %}
|
||||||
|
>{{trainee.grade}}{% if not trainee.grade %}
|
||||||
|
<a href="{% url 'account_profile_update' trainee.user.username %}" class="add-grade">add</a>
|
||||||
|
{% endif %}
|
||||||
|
</td>
|
||||||
|
<td>{{trainee.user.email}}</td>
|
||||||
|
<td
|
||||||
|
{% if not trainee.supervisor %}
|
||||||
|
class="no-supervisor"
|
||||||
|
{% endif %}
|
||||||
|
>{{trainee.supervisor}}{% if not trainee.supervisor %}
|
||||||
|
<a href="{% url 'account_profile_update' trainee.user.username %}" class="add-supervisor">add</a>
|
||||||
|
{% endif %}
|
||||||
|
</td>
|
||||||
|
<td><a href="{% url 'account_update' trainee.user.username %}">User</a>/<a href="{% url 'account_profile_update' trainee.user.username %}">Profile</a></td>
|
||||||
|
</tr>
|
||||||
|
{% endfor %}
|
||||||
|
|
||||||
</table>
|
</table>
|
||||||
|
|
||||||
<div class="small-gray">Count: {{trainees|length}}</div>
|
<div class="small-gray">Count: {{trainees|length}}</div>
|
||||||
|
|
||||||
|
<style>
|
||||||
|
.add-supervisor, .add-grade {
|
||||||
|
font-size: small;
|
||||||
|
}
|
||||||
|
.no-supervisor, .no-grade {
|
||||||
|
color: red;
|
||||||
|
opacity: 50%;
|
||||||
|
}
|
||||||
|
|
||||||
|
td {
|
||||||
|
padding-right: 8px;
|
||||||
|
}
|
||||||
|
|
||||||
|
tr:hover {
|
||||||
|
box-shadow: 0 0 2px #ccc;
|
||||||
|
|
||||||
|
}
|
||||||
|
</style>
|
||||||
{% endblock %}
|
{% endblock %}
|
||||||
|
|
||||||
|
|||||||
+1
-1
@@ -3077,7 +3077,7 @@ def exam_inactive(request, context):
|
|||||||
@user_is_cid_user_manager
|
@user_is_cid_user_manager
|
||||||
def trainees(request, grade: None|str=None):
|
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:
|
if grade is not None:
|
||||||
trainees = trainees.filter(grade__name=grade)
|
trainees = trainees.filter(grade__name=grade)
|
||||||
|
|||||||
Reference in New Issue
Block a user