Recognize and remove duplicate addresses while gathering. Fixes bug #1815. Commit ready for merge.
- Legacy-Id: 10219
This commit is contained in:
parent
f9e35662e5
commit
13d81dc509
|
@ -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)
|
||||
|
@ -37,8 +51,7 @@ class Recipient(models.Model):
|
|||
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 = []
|
||||
|
|
Loading…
Reference in a new issue