From 32ee4de50b4d49c63267cbf318a850a1438240eb Mon Sep 17 00:00:00 2001 From: Bruno Tikami Date: Fri, 19 Feb 2016 13:01:39 -0200 Subject: [PATCH] UPDATED: Better validation before creating a duplicated TicketCC --- helpdesk/management/commands/get_email.py | 6 ++++-- helpdesk/views/staff.py | 2 +- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/helpdesk/management/commands/get_email.py b/helpdesk/management/commands/get_email.py index 65127e6d..b5688332 100644 --- a/helpdesk/management/commands/get_email.py +++ b/helpdesk/management/commands/get_email.py @@ -198,8 +198,10 @@ def create_object_from_email_message(message, ticket_id, payload, files, quiet): if in_reply_to is not None: try: - previous_followup = FollowUp.objects.get(message_id=in_reply_to) - ticket = previous_followup.ticket + queryset = FollowUp.objects.filter(message_id=in_reply_to).order_by('-date') + if queryset.count() > 0: + previous_followup = queryset.first() + ticket = previous_followup.ticket except FollowUp.DoesNotExist: pass #play along. The header may be wrong diff --git a/helpdesk/views/staff.py b/helpdesk/views/staff.py index 35790534..742f2579 100644 --- a/helpdesk/views/staff.py +++ b/helpdesk/views/staff.py @@ -348,7 +348,7 @@ def subscribe_to_ticket_updates(ticket, user=None, email=None, can_view=True, ca } ticket_cc_form = TicketCCForm(data) - if ticket_cc_form.is_valid(): + if ticket is not None and ticket_cc_form.is_valid(): queryset = TicketCC.objects.filter(ticket=ticket, user=user, email=email)