From c26e9acc3c7a172b4ab72e5772b6878c0fcab806 Mon Sep 17 00:00:00 2001 From: Ross Date: Thu, 16 Dec 2021 17:34:40 +0000 Subject: [PATCH] . --- generic/models.py | 4 ++-- generic/templates/generic/group_emailed.html | 12 +++++++++--- generic/views.py | 16 +++++++++++----- 3 files changed, 22 insertions(+), 10 deletions(-) diff --git a/generic/models.py b/generic/models.py index 1d7d488f..0a3eed4e 100644 --- a/generic/models.py +++ b/generic/models.py @@ -248,10 +248,10 @@ class CidUser(models.Model): Passcode: {self.passcode} --------- - You will need these to login to the test system on the day. + You will need these to access to the test system. Direct link to login: - {settings.REMOTE_URL}/{login_url}?cid={self.cid}&passcode={self.passcode} + {settings.REMOTE_URL}{login_url}?cid={self.cid}&passcode={self.passcode} diff --git a/generic/templates/generic/group_emailed.html b/generic/templates/generic/group_emailed.html index c3f652ff..81df8361 100755 --- a/generic/templates/generic/group_emailed.html +++ b/generic/templates/generic/group_emailed.html @@ -1,9 +1,15 @@ {% extends 'generic/base.html' %} {% block content %} + Attempted to send {{users_count}} emails. - Emails sent as below: - {% for u, success, msg in results %} -

{{u.cid}}: {{u.email}} [success={{success}}] ({{msg}})

+

Emails sent:

+ {% for u in sent %} +

{{u.cid}}: {{u.email}}

+ {% endfor %} + +

Emails not sent:

+ {% for u, msg in not_sent %} +

{{u.cid}}: {{u.email}} [{{msg}}]

{% endfor %} {% endblock %} diff --git a/generic/views.py b/generic/views.py index 5d6bb289..36b054c3 100644 --- a/generic/views.py +++ b/generic/views.py @@ -215,7 +215,9 @@ def generic_exam_json_edit(request): class ExamViews(View, LoginRequiredMixin): - def __init__(self, exam, question, cid_user_answer, app, question_type, loadJsonAnswer): + def __init__( + self, exam, question, cid_user_answer, app, question_type, loadJsonAnswer + ): self.Exam = exam self.Question = question self.CidUserAnswer = cid_user_answer @@ -1028,17 +1030,21 @@ def group_view(request): def group_email(request, pk): group = get_object_or_404(CidUserGroup, pk=pk) - users = group.ciduser_set.all() + users = group.ciduser_set.all(login_email_sent=False) - results = [] + sent = [] + not_sent = [] for u in users: success, msg = u.email_details() - results.append((u, success, msg)) + if success: + sent.append(u) + else: + not_sent.append((u, msg)) return render( request, "generic/group_emailed.html", - {"results": results}, + {"sent": sent, "not_sent": not_sent, "users_count": users.count()}, )