1
0
Fork 1
mirror of https://github.com/coddingtonbear/django-mailbox.git synced 2026-07-10 06:48:19 +02:00
This commit is contained in:
Adam Dobrawy 2018-04-03 08:24:32 +00:00 committed by GitHub
commit fc55312b3e
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
4 changed files with 88 additions and 4 deletions

View file

@ -347,7 +347,6 @@ class Mailbox(models.Model):
msg = Message()
msg._email_object = message
settings = utils.get_settings()
if settings['store_original_message']:
self._process_save_original_message(message, msg)
msg.mailbox = self
@ -387,10 +386,14 @@ class Mailbox(models.Model):
def _process_save_original_message(self, message, msg):
settings = utils.get_settings()
if six.PY3:
content = message.as_string().encode('ascii', 'surrogateescape')
else:
content = message.as_string()
if settings['compress_original_message']:
with NamedTemporaryFile(suffix=".eml.gz") as fp_tmp:
with gzip.GzipFile(fileobj=fp_tmp, mode="w") as fp:
fp.write(message.as_string().encode('utf-8'))
fp.write(content)
msg.eml.save(
"%s.eml.gz" % (uuid.uuid4(), ),
File(fp_tmp),
@ -400,7 +403,7 @@ class Mailbox(models.Model):
else:
msg.eml.save(
'%s.eml' % uuid.uuid4(),
ContentFile(message.as_string()),
ContentFile(content),
save=False
)