Skip to content

Commit

Permalink
Fix send double notification on accept letter
Browse files Browse the repository at this point in the history
  • Loading branch information
ad-m committed Oct 4, 2018
1 parent 0412b51 commit df17f98
Show file tree
Hide file tree
Showing 3 changed files with 9 additions and 4 deletions.
7 changes: 5 additions & 2 deletions poradnia/letters/models.py
Original file line number Diff line number Diff line change
Expand Up @@ -75,15 +75,18 @@ class Letter(AbstractRecord):
genre = models.CharField(choices=GENRE, default=GENRE.comment, max_length=20)
status = StatusField(db_index=True)
status_changed = MonitorField(monitor='status')
accept = MonitorField(monitor='status', when=['done'], verbose_name=_("Accepted on"))
accept = MonitorField(monitor='status',
when=['done'],
verbose_name=_("Accepted on"))
name = models.CharField(max_length=250, verbose_name=_("Subject"))
text = models.TextField(verbose_name=_("Text"))
html = models.TextField(verbose_name=_("HTML"), blank=True)
signature = models.TextField(verbose_name=_("Signature"), blank=True, null=True)
created_by = models.ForeignKey(to=settings.AUTH_USER_MODEL,
related_name='letter_created_by',
verbose_name=_("Created by"))
created_on = models.DateTimeField(auto_now_add=True, verbose_name=_("Created on"))
created_on = models.DateTimeField(auto_now_add=True,
verbose_name=_("Created on"))
modified_by = models.ForeignKey(settings.AUTH_USER_MODEL,
verbose_name=_("Modified by"),
null=True,
Expand Down
3 changes: 3 additions & 0 deletions poradnia/letters/tests/test_views.py
Original file line number Diff line number Diff line change
Expand Up @@ -414,6 +414,9 @@ def test_notify_user_about_acceptation(self):
self.assertEmailTemplateUsed('letters/email/letter_send_to_client.txt')
self.assertEmailReceived(user1.email, 'letters/email/letter_send_to_client.txt')
self.assertEmailReceived(user2.email, 'letters/email/letter_send_to_client.txt')
recipient_list = [addr for x in mail.outbox for addr in x.to]
self.assertEqual(recipient_list.count(user2.email), 1,
'Sended double notificatiton to client')

def test_accepted_letter_contains_attachment(self):
letter = AttachmentFactory(letter=self.object)
Expand Down
3 changes: 1 addition & 2 deletions poradnia/letters/views/fbv.py
Original file line number Diff line number Diff line change
Expand Up @@ -66,8 +66,7 @@ def send(request, pk):
if form.is_valid():
obj = form.save()
messages.success(request,
_("Letter %(object)s send!") % {'object': obj, })
obj.send_notification(actor=request.user, verb='accepted')
_("Letter %(object)s send!") % {'object': obj})
return HttpResponseRedirect(case.get_absolute_url())
else:
form = SendLetterForm(user=request.user, instance=letter)
Expand Down

0 comments on commit df17f98

Please sign in to comment.