This commit is contained in:
Ross
2021-12-31 13:43:58 +00:00
parent 95099007c2
commit 87f5b911cc
3 changed files with 13 additions and 55 deletions
+9 -5
View File
@@ -317,11 +317,7 @@ class CidUser(models.Model):
return available_exams
def email_results(self, resend=False):
if self.results_email_sent and not resend:
return False, "Already sent."
# Get a list of taken exams
def generate_exam_report(self):
exam_list = self.get_cid_exams()
exam_text = []
@@ -346,9 +342,17 @@ class CidUser(models.Model):
msg = "\n\n".join(exam_text)
print(msg)
return msg
html_msg = f""""""
def email_results(self, resend=False):
if self.results_email_sent and not resend:
return False, "Already sent."
# Get a list of taken exams
msg = self.generate_exam_report()
try:
send_mail(
f"{self.group} results",
+2 -26
View File
@@ -92,37 +92,13 @@ def cid_results(request, cid):
if not cid_user:
raise Http404("CID not found")
EXAM_ANSWER_MAP = {
"physics": (PhysicsCidUserAnswer, PhysicsExam),
"anatomy": (AnatomyCidUserAnswer, AnatomyExam),
"rapids": (RapidsCidUserAnswer, RapidsExam),
"longs": (LongsCidUserAnswer, LongsExam),
"sbas": (SbasCidUserAnswer, SbasExam),
}
kwargs = {"exam_mode": True}
exams = []
for exam_type in EXAM_ANSWER_MAP:
CidUserAnswer, Exam = EXAM_ANSWER_MAP[exam_type]
exam_answers = CidUserAnswer.objects.filter(cid=cid)
exam_ids = exam_answers.values_list("exam").distinct()
exams.append((exam_type, Exam.objects.filter(id__in=exam_ids, **kwargs)))
available_exams = cid_user.get_cid_exams()
report = cid_user.generate_exam_report()
return render(
request,
"cid_results.html",
{
# "physics_exams": physics_exams,
# "anatomy_exams": anatomy_exams,
# "rapid_exams": rapid_exams,
# "longs_exams": longs_exams,
# "sba_exams": sba_exams,
"all_exams": exams,
"cid": cid,
"cid_user": cid_user,
"available_exams": available_exams,
"report": report,
},
)
+2 -24
View File
@@ -2,29 +2,7 @@
{% block content %}
<div class="">
<h2>CID: {{ cid }}</h2>
<p>The following exams will be available to take when active.
{% for exam_type, exams in available_exams %}
<h4>{{exam_type}}</h4>
<ul>
{% for exam in exams %}
<li><a href="" target="_blank">{{exam.name}}</a></li>
{% endfor %}
</ul>
{% endfor %}
{{report}}
</div>
<h3>Exam results</h3>
The following exam results been found. Click to view answers (and scores when the results are published):
{% for exam_type, exams in all_exams %}
{% if exams %}
<h4>{{exam_type|title}}</h4>
<ul>
{% for exam in exams %}
<li><a href="">{{exam.name}} {{exam.get_cid_user_score|cid}}</a></li>
{% endfor %}
</ul>
{% endif %}
{% endfor %}
</div>
{% endblock %}