diff --git a/opentech/apply/review/models.py b/opentech/apply/review/models.py index 912cafa180795a6dc2bee402ce99b220c4b4a588..a5ce4a2f48782acefb11bfbb4f31fc208ea74ffb 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 e4823bd6f540cd8e15263bcd70cfa168772b4d94..2cea1734e4eda8390a30a78b8879c0b26b609270 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()