diff options
| author | bwarsaw | 2002-02-11 20:51:17 +0000 |
|---|---|---|
| committer | bwarsaw | 2002-02-11 20:51:17 +0000 |
| commit | f2881d14d54cd7207fde431bd276f66d19960896 (patch) | |
| tree | 48b766d706544462b112a215c83abeaaeff558a9 /Mailman/Message.py | |
| parent | d8d3d0e580cb1a2fb47a8454c25e13ad444faeb5 (diff) | |
| download | mailman-f2881d14d54cd7207fde431bd276f66d19960896.tar.gz mailman-f2881d14d54cd7207fde431bd276f66d19960896.tar.zst mailman-f2881d14d54cd7207fde431bd276f66d19960896.zip | |
UserNotification.__init__(): Add a `lang' optional argument so that
charset information can be propagated into the headers, if necessary.
Use the new mimelib/email package's Charset and Header classes.
Patch by Ben Gertzfield. Requires email 0.97.
Diffstat (limited to '')
| -rw-r--r-- | Mailman/Message.py | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/Mailman/Message.py b/Mailman/Message.py index 617bc5058..9508a3d98 100644 --- a/Mailman/Message.py +++ b/Mailman/Message.py @@ -22,6 +22,10 @@ which is more convenient for use inside Mailman. import email.Message import email.Utils + +from email.Charset import Charset +from email.Header import Header + from types import ListType from Mailman import mm_cfg @@ -96,13 +100,16 @@ class Message(email.Message.Message): class UserNotification(Message): """Class for internally crafted messages.""" - def __init__(self, recip, sender, subject=None, text=None): + def __init__(self, recip, sender, subject=None, text=None, lang=None): Message.__init__(self) + charset = None + if lang is not None: + charset = Charset(Utils.GetCharSet(lang)) if text is not None: - self.set_payload(text) + self.set_payload(text, charset) if subject is None: subject = '(no subject)' - self['Subject'] = subject + self['Subject'] = Header(subject, charset, header_name='Subject') self['From'] = sender if isinstance(recip, ListType): self['To'] = COMMASPACE.join(recip) |
