--- /dev/null
+From jdoe@example.com Fri Apr 18 11:18:58 2008
+Message-ID: <abcd@example.com>
+Date: Fri, 18 Apr 2008 12:00:00 +0000
+From: John Doe <jdoe@example.com>
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+Subject: [be-bug] help
+
+Dummy content
verboseInvoke = False
PGP_SIGN_AS = None
PASSPHRASE = None
-DEFAULT_BODY_ENCODING = "UTF-8"
# The following commands are adapted from my .mutt/pgp configuration
#
return target_emails(self.headermsg)
def encodedMIMEText(self, body, encoding=None):
if encoding == None:
- encoding = DEFAULT_BODY_ENCODING
- if type(body) == types.StringType:
- encoding = "US-ASCII"
+ if type(body) == types.StringType:
+ encoding = "US-ASCII"
+ elif type(body) == types.UnicodeType:
+ for encoding in ["US-ASCII", "ISO-8859-1", "UTF-8"]:
+ try:
+ body.encode(encoding)
+ except UnicodeError:
+ pass
+ else:
+ break
+ assert encoding != None
# Create the message ('plain' stands for Content-Type: text/plain)
- return MIMEText(body.encode(encoding), 'plain', encoding)
+ if encoding == "US-ASCII":
+ return MIMEText(body)
+ else:
+ return MIMEText(body.encode(encoding), 'plain', encoding)
def clearBodyPart(self):
body = self.encodedMIMEText(self.body)
body.add_header('Content-Disposition', 'inline')