From fad4f49cf5ab578e70f6be715199b643ba3a61cd Mon Sep 17 00:00:00 2001
From: Todd Dembrey <todd.dembrey@torchbox.com>
Date: Tue, 24 Jul 2018 10:27:21 +0100
Subject: [PATCH] Move the new review creation message to have a request

---
 opentech/apply/review/models.py |  9 +--------
 opentech/apply/review/views.py  | 13 +++++++++++++
 2 files changed, 14 insertions(+), 8 deletions(-)

diff --git a/opentech/apply/review/models.py b/opentech/apply/review/models.py
index 912cafa18..a5ce4a2f4 100644
--- a/opentech/apply/review/models.py
+++ b/opentech/apply/review/models.py
@@ -5,7 +5,6 @@ from django.db.models.signals import post_save
 from django.dispatch import receiver
 from django.urls import reverse
 
-from opentech.apply.activity.messaging import messenger, MESSAGES
 from opentech.apply.users.models import User
 
 
@@ -89,12 +88,6 @@ class Review(models.Model):
 def update_submission_reviewers_list(sender, **kwargs):
     review = kwargs.get('instance')
 
+    # Make sure the reviewer is in the reviewers list on the submission
     if not review.submission.reviewers.filter(id=review.author.id).exists():
         review.submission.reviewers.add(review.author)
-
-    if kwargs.get('created', False):
-        messenger(
-            MESSAGES.NEW_REVIEW,
-            user=review.author,
-            submission=review.submission,
-        )
diff --git a/opentech/apply/review/views.py b/opentech/apply/review/views.py
index e4823bd6f..2cea1734e 100644
--- a/opentech/apply/review/views.py
+++ b/opentech/apply/review/views.py
@@ -5,6 +5,7 @@ from django.urls import reverse_lazy
 from django.utils.decorators import method_decorator
 from django.views.generic import ListView, DetailView
 
+from opentech.apply.activity.messaging import messenger, MESSAGES
 from opentech.apply.funds.models import ApplicationSubmission
 from opentech.apply.users.decorators import staff_required
 from opentech.apply.utils.views import CreateOrUpdateView
@@ -71,6 +72,18 @@ class ReviewCreateOrUpdateView(CreateOrUpdateView):
 
         return kwargs
 
+    def form_valid(self, form):
+        response = super().form_valid(form)
+
+        if self.object.created:
+            messenger(
+                MESSAGES.NEW_REVIEW,
+                request=self.request,
+                user=self.object.author,
+                submission=self.submission,
+            )
+        return response
+
     def get_success_url(self):
         return self.submission.get_absolute_url()
 
-- 
GitLab