This commit is contained in:
Ross
2021-12-15 20:59:48 +00:00
parent 2ff8b54d28
commit 1af466785b
3 changed files with 25 additions and 10 deletions
+16 -3
View File
@@ -1,4 +1,6 @@
from django.db import models
from django.http import request
from smtplib import SMTPException
from django.urls import reverse
@@ -222,6 +224,8 @@ class CidUser(models.Model):
email = models.EmailField(blank=True)
supervisor_email = models.EmailField(blank=True)
login_email_sent = models.BooleanField(default=False)
group = models.ForeignKey("CidUserGroup", on_delete=models.SET_NULL, null=True)
def __str__(self) -> str:
@@ -230,9 +234,11 @@ class CidUser(models.Model):
def check_passcode(self, passcode) -> bool:
return self.passcode == passcode
def email_details(self):
def email_details(self, resend=False):
if self.login_email_sent and not self.resend:
return False, "Already sent."
login_url = reverse("cid_selector")
login_url = request.build_absolute_uri(reverse("cid_selector"))
msg = f"""
See below for you details for: {self.group}
@@ -252,7 +258,14 @@ class CidUser(models.Model):
Please note this inbox is not monitored. Direct all enquiries to ...
"""
send_mail("Candidate Details", msg, "test@xkjq.uk", [self.email])
try:
send_mail("Candidate Details", msg, "test@xkjq.uk", [self.email], fail_silently=False)
except SMTPException as e:
return False, e
self.login_email_sent = True
self.save()
return True, ""
class CidUserExam(models.Model):
content_type = models.ForeignKey(ContentType, on_delete=models.CASCADE)