This commit is contained in:
Ross
2022-01-11 19:20:20 +00:00
parent 84b1e1e9a2
commit eac89252f9
8 changed files with 204 additions and 44 deletions
+13 -5
View File
@@ -312,7 +312,7 @@ class CidUser(models.Model):
for n, t in self.EXAM_TYPES:
exam_rel = getattr(self, t)
if exam_rel.exists():
exams = exam_rel.filter(exam_mode=True).order_by("name")
exams = exam_rel.filter(exam_mode=True, archive=False).order_by("name")
available_exams.append((n, exams))
return available_exams
@@ -324,28 +324,33 @@ class CidUser(models.Model):
if self.name:
name = f"{self.name} "
exam_text = [f"Candidate {name}{self.cid} [{self.email}]"]
exam_text = [f"Candidate {self.cid} {name}[{self.email}]"]
for exam_type, exams in exam_list:
exam_text.append(f"{'='*len(exam_type)}\n{exam_type}\n{'='*len(exam_type)}")
for exam in exams:
print(exam)
try:
user_score = exam.user_scores[str(self.cid)]
except KeyError:
user_score = "Score not generated"
t = exam.get_exam_stats()
try:
percentage = (
f" ({user_score / int(exam.stats_max_possible) * 100:.2f}%)"
)
except TypeError:
percentage = ""
exam_text.append(
f"""{t}
# Score: {user_score} / {int(exam.stats_max_possible)}
# Score: {user_score} / {int(exam.stats_max_possible)}{percentage}
"""
)
msg = "\n\n".join(exam_text)
print(msg)
return msg
html_msg = f""""""
@@ -430,6 +435,9 @@ class CidUser(models.Model):
self.save()
return True, ""
def get_email_results_url(self):
return reverse("generic:candidate_email_results", kwargs={"cid": self.cid})
class CidUserExam(models.Model):
content_type = models.ForeignKey(ContentType, on_delete=models.CASCADE)