From a26ff00eec0850be6c88958d5bf94ad2c75dea6b Mon Sep 17 00:00:00 2001
From: "J.-S. Caux" <J.S.Caux@uva.nl>
Date: Tue, 3 Jul 2018 10:32:06 +0200
Subject: [PATCH] Add event when sending initial email

---
 colleges/views.py | 16 +++++++++++++++-
 1 file changed, 15 insertions(+), 1 deletion(-)

diff --git a/colleges/views.py b/colleges/views.py
index cb51296dc..7dfe56c5c 100644
--- a/colleges/views.py
+++ b/colleges/views.py
@@ -13,12 +13,13 @@ from django.views.generic.list import ListView
 
 from submissions.models import Submission
 
+from .constants import PROSPECTIVE_FELLOW_EVENT_EMAILED
 from .forms import FellowshipForm, FellowshipTerminateForm, FellowshipRemoveSubmissionForm,\
     FellowshipAddSubmissionForm, AddFellowshipForm, SubmissionAddFellowshipForm,\
     FellowshipRemoveProceedingsForm, FellowshipAddProceedingsForm, SubmissionAddVotingFellowForm,\
     FellowVotingRemoveSubmissionForm,\
     ProspectiveFellowForm, ProspectiveFellowEventForm
-from .models import Fellowship, ProspectiveFellow
+from .models import Fellowship, ProspectiveFellow, ProspectiveFellowEvent
 
 from scipost.constants import SCIPOST_SUBJECT_AREAS
 from scipost.mixins import PermissionsMixin
@@ -371,6 +372,19 @@ class ProspectiveFellowInitialEmailView(PermissionsMixin, MailView):
     mail_code = 'prospectivefellows/invite_prospective_fellow_initial'
     success_url = reverse_lazy('colleges:prospective_Fellows')
 
+    def form_valid(self, form):
+        """
+        Create an event associated to this outgoing email.
+        """
+        event = ProspectiveFellowEvent(
+            prosfellow=self.object,
+            event=PROSPECTIVE_FELLOW_EVENT_EMAILED,
+            comments='Emailed initial template',
+            noted_on=timezone.now(),
+            noted_by=self.request.user.contributor)
+        event.save()
+        return super().form_valid(form)
+
 
 class ProspectiveFellowEventCreateView(PermissionsMixin, CreateView):
     """
-- 
GitLab