summaryrefslogtreecommitdiff
path: root/src/mailman/email/message.py
diff options
context:
space:
mode:
Diffstat (limited to 'src/mailman/email/message.py')
-rw-r--r--src/mailman/email/message.py16
1 files changed, 13 insertions, 3 deletions
diff --git a/src/mailman/email/message.py b/src/mailman/email/message.py
index d7bf81055..dcea82425 100644
--- a/src/mailman/email/message.py
+++ b/src/mailman/email/message.py
@@ -142,7 +142,7 @@ class Message(email.message.Message):
else '')
else:
field_values = self.get_all(header, [])
- senders.extend(address.lower() for (real_name, address)
+ senders.extend(address.lower() for (display_name, address)
in email.utils.getaddresses(field_values))
# Filter out None and the empty string.
return [sender for sender in senders if sender]
@@ -178,10 +178,20 @@ class UserNotification(Message):
self['To'] = recipients
self.recipients = set([recipients])
- def send(self, mlist, **_kws):
+ def send(self, mlist, add_precedence=True, **_kws):
"""Sends the message by enqueuing it to the 'virgin' queue.
This is used for all internally crafted messages.
+
+ :param mlist: The mailing list to send the message to.
+ :type mlist: `IMailingList`
+ :param add_precedence: Flag indicating whether a `Precedence: bulk`
+ header should be added to the message or not.
+ :type add_precedence: bool
+
+ This function also accepts arbitrary keyword arguments. The key/value
+ pairs for **kws is added to the metadata dictionary associated with
+ the enqueued message.
"""
# Since we're crafting the message from whole cloth, let's make sure
# this message has a Message-ID.
@@ -193,7 +203,7 @@ class UserNotification(Message):
# UserNotifications are typically for admin messages, and for messages
# other than list explosions. Send these out as Precedence: bulk, but
# don't override an existing Precedence: header.
- if 'precedence' not in self:
+ if 'precedence' not in self and add_precedence:
self['Precedence'] = 'bulk'
self._enqueue(mlist, **_kws)