Skip to content

Commit

Permalink
Recognize and remove duplicate addresses while gathering. Fixes bug #…
Browse files Browse the repository at this point in the history
…1815. Commit ready for merge.

 - Legacy-Id: 10219
  • Loading branch information
rjsparks committed Oct 16, 2015
1 parent f9e3566 commit 13d81dc
Showing 1 changed file with 15 additions and 2 deletions.
17 changes: 15 additions & 2 deletions ietf/mailtrigger/models.py
Expand Up @@ -3,8 +3,22 @@
from django.db import models
from django.template import Template, Context

from email.utils import parseaddr

from ietf.group.models import Role

def clean_duplicates(addrlist):
retval = set()
for a in addrlist:
(name,addr) = parseaddr(a)
if (name,addr)==('',''):
retval.add(a)
elif name:
retval.add('"%s" <%s>'%(name,addr))
else:
retval.add(addr)
return list(retval)

class MailTrigger(models.Model):
slug = models.CharField(max_length=32, primary_key=True)
desc = models.TextField(blank=True)
Expand Down Expand Up @@ -37,8 +51,7 @@ def gather(self, **kwargs):
if rendering:
retval.extend([x.strip() for x in rendering.split(',')])

retval = list(set(retval))
return retval
return clean_duplicates(retval)

def gather_doc_group_chairs(self, **kwargs):
addrs = []
Expand Down

0 comments on commit 13d81dc

Please sign in to comment.