Notify sender for tickets created by email.

Fix ticket ~sircmpwn/todo.sr.ht/180
This commit is contained in:
Gabriel Augendre 2020-06-08 16:50:49 +02:00 committed by Drew DeVault
parent fcf5cf218d
commit 6599be5371
2 changed files with 4 additions and 3 deletions

View File

@ -106,7 +106,7 @@ class MailHandler:
print("Rejecting email due to validation errors")
return "550 " + ", ".join([e["reason"] for e in valid.errors])
ticket = submit_ticket(tracker, sender, title, desc)
ticket = submit_ticket(tracker, sender, title, desc, from_email=True)
UserWebhook.deliver(UserWebhook.Events.ticket_create,
ticket.to_dict(),
UserWebhook.Subscription.user_id == sender.id)

View File

@ -445,7 +445,7 @@ def _send_new_ticket_notification(subscription, ticket):
notify(subscription, "new_ticket", subject,
headers=headers, ticket=ticket, ticket_url=ticket_url(ticket))
def submit_ticket(tracker, submitter, title, description, importing=False):
def submit_ticket(tracker, submitter, title, description, importing=False, from_email=False):
ticket = Ticket(
submitter=submitter,
tracker=tracker,
@ -471,7 +471,8 @@ def submit_ticket(tracker, submitter, title, description, importing=False):
# Send notifications
for sub in tracker.subscriptions:
_create_event_notification(sub.participant, event)
if sub.participant != submitter:
# Notify submitter for tickets created by email
if from_email or sub.participant != submitter:
_send_new_ticket_notification(sub, ticket)
notified_users = [sub.participant for sub in tracker.subscriptions]