Enhance submission tracking by adding first and last name data attributes for candidates, improving badge tooltip information in the submitted candidates list.
This commit is contained in:
+17
-3
@@ -56,7 +56,7 @@ from reversion.views import RevisionMixin
|
||||
from atlas.models import CaseCollection, CaseDetail
|
||||
from generic.decorators import user_is_cid_user_manager
|
||||
from generic.filters import CidUserFilter, ExaminationFilter, SupervisorFilter
|
||||
from generic.models import UserUserGroup
|
||||
from generic.models import UserUserGroup, CidUserExam
|
||||
|
||||
from generic.tables import (
|
||||
CidUserExamTable,
|
||||
@@ -2335,9 +2335,23 @@ class ExamViews(View, LoginRequiredMixin):
|
||||
if request.user not in exam.author.all() and not request.user.is_superuser:
|
||||
raise PermissionDenied
|
||||
|
||||
user_exam_data = exam.cid_users.all().prefetch_related("cid_user", "user_user")
|
||||
# Explicitly query the CidUserExam entries for this exam to avoid any
|
||||
# ambiguity from GenericRelation managers and to ensure we only return
|
||||
# submissions that belong to this exam instance.
|
||||
from django.contrib.contenttypes.models import ContentType
|
||||
|
||||
return render(request, "generic/partials/exam_cids_submitted_list.html", {"user_exam_data": user_exam_data, "exam": exam})
|
||||
ct = ContentType.objects.get_for_model(self.Exam)
|
||||
user_exam_data = (
|
||||
CidUserExam.objects.filter(content_type=ct, object_id=exam.pk)
|
||||
.select_related("cid_user", "user_user")
|
||||
.order_by("start_time")
|
||||
)
|
||||
|
||||
return render(
|
||||
request,
|
||||
"generic/partials/exam_cids_submitted_list.html",
|
||||
{"user_exam_data": user_exam_data, "exam": exam},
|
||||
)
|
||||
|
||||
# def exam_groups_edit(self, request, exam_id):
|
||||
# exam = get_object_or_404(self.Exam, pk=exam_id)
|
||||
|
||||
Reference in New Issue
Block a user