1
0
Fork 1
mirror of https://github.com/coddingtonbear/django-mailbox.git synced 2026-07-09 22:38:19 +02:00
Commit graph

65 commits

Author SHA1 Message Date
Adam Coddington
1bd781832a Removing leftover logger. 2013-07-26 22:16:44 -07:00
Adam Coddington
88d122c421 Base64-encode message body when storing in DB.
* Since Django requires that the content stored in a TextField be unicode, we
  need some way to encode the message safely.  In situations before where
  a single-byte non-7-bit-clean encoding were used, django-mailbox could
  explode when writing the message copy to the database; this should ameliorate
  that problem.
* Reverts earlier changesets' encoding normalization.
2013-07-26 22:13:29 -07:00
Adam Coddington
adb17e7d67 Adding tests and minor code changes to ensure that we properly handle the distinction between bytes and text when dehydrating/rehydrating messages. 2013-07-26 19:13:35 -07:00
Adam Coddington
3ee4b43936 Cleaning up tests; moving test e-mail messages; fixing bugs relating to message encoding rehydration.
--HG--
rename : django_mailbox/tests/generic_message.eml => django_mailbox/tests/messages/generic_message.eml
rename : django_mailbox/tests/message_with_attachment.eml => django_mailbox/tests/messages/message_with_attachment.eml
rename : django_mailbox/tests/message_with_defective_attachment_association.eml => django_mailbox/tests/messages/message_with_defective_attachment_association.eml
rename : django_mailbox/tests/message_with_defective_attachment_association_result.eml => django_mailbox/tests/messages/message_with_defective_attachment_association_result.eml
rename : django_mailbox/tests/message_with_image_jpg_mimetype.eml => django_mailbox/tests/messages/message_with_image_jpg_mimetype.eml
rename : django_mailbox/tests/message_with_long_text_lines.eml => django_mailbox/tests/messages/message_with_long_text_lines.eml
rename : django_mailbox/tests/message_with_many_multiparts.eml => django_mailbox/tests/messages/message_with_many_multiparts.eml
rename : django_mailbox/tests/message_with_many_multiparts_stripped_html.eml => django_mailbox/tests/messages/message_with_many_multiparts_stripped_html.eml
rename : django_mailbox/tests/message_with_utf8_char.eml => django_mailbox/tests/messages/message_with_utf8_char.eml
rename : django_mailbox/tests/multipart_text.eml => django_mailbox/tests/messages/multipart_text.eml
2013-07-26 18:07:31 -07:00
Adam Coddington
98745bcd70 Set email payload's charset after all other headers. 2013-07-26 17:40:44 -07:00
Adam Coddington
2e6c23a6f0 Revamping encoding handling to normalize encodings to UTF-8 for storage; back into original encoding during rehydration. 2013-07-26 01:01:07 -07:00
Oliver
d294b26729 Bugfixes: Attachment extension; UTF16 characters in body 2013-08-03 10:53:38 -05:00
Adam Coddington
f48abb0d14 Adding missing import. 2013-07-26 20:18:49 -07:00
Adam Coddington
0f3cb09f94 Minor PR cleanup and reorganization. 2013-07-26 20:15:39 -07:00
Adam Coddington
9954b74eae Merging in changes from buriy:master (pr #5) 2013-07-25 18:45:22 -07:00
Yuri Baburov
ac0f2153c0 Applied cleaned up fixes from Anders.Du (duyu) 2013-07-25 18:47:49 +01:00
Yuri Baburov
6697e848c8 Support for Django 1.4 with python 2.5, copied from
https://github.com/jhmaddox/django-precompressed/issues/1
("AttributeError: StringIO instance has no attribute 'name'")
2013-07-25 18:24:33 +01:00
Adam Coddington
384de32d85 Encode email message body into UTF-8 always when on Python 2; although I originally thought that this was a Python 2.6 thing, it looks like it might be some combination of platform/version, but bytes should always be fine. 2013-07-25 00:14:24 -07:00
Yuri Baburov
32968aa678 Support for Django 1.4 with python 2.5, copied from
https://github.com/jhmaddox/django-precompressed/issues/1
("AttributeError: StringIO instance has no attribute 'name'")
2013-07-22 18:16:28 +01:00
Anders.Du
491b489867 Fix the IndentationError in last commit. 2013-07-21 17:31:44 +08:00
Anders.Du
eca0b2caa4 * Add decoding for some encoded messages parts, i.e.
attachments' name, message header, etc.
* Remove overriding for MessageAttachment's __getitem__
  method, so we can call the members directly in django
  templates.

Signed-off-by: Anders.Du <ander.dy@gmail.com>
2013-07-19 23:39:41 +08:00
Adam Coddington
4e83ae8eb3 Updating documentation. 2013-06-24 00:20:08 -07:00
Adam Coddington
5f289289ce Major refactor of message attachment handling; no longer stores verbatim
message copy in database.

Bumping version number to 2.1

* Walks through incoming message, write attachments to disk as they are found,
  and alters message body removing actual attachment body, and adding
  header 'X-Django-Mailbox-Interpolate-Attachment' referencing the ID of the
  stored attachment.
* When calling ``get_email_object``, will walk through stored message, and
  're-hydrate' the message by finding said headers, searching for the
  appropriate record in the MessageAttachments table, and rebuild the message
  object as closely as possible.

Minor fixes:

* Properly collect text/plain content from any part of the message; previously
  would only check the message's first level of payloads, now walks through
  all payloads, building a string of all text/plain content.
* Remove use of deprecated `assertEquals` message.
2013-06-23 20:27:50 -07:00
Adam Coddington
548cc66c52 Incorporating changes from @mancio's fork. 2013-06-22 17:44:55 -07:00
Adam Coddington
364a3061c2 Adding Python3 support. 2013-06-22 15:42:50 -07:00
Adam Coddington
3ea8689ec0 Encode message body to bytes prior to reconstituting e-mail message object. Added additional test to ensure that messages can make it the full cycle. 2013-06-22 15:06:53 -07:00
Adam Coddington
9cdb2d9d1b PEP-8 Cleanup. 2013-06-22 14:35:47 -07:00
Adam Coddington
9f77c9221a Removing unintended print message :-o 2013-06-22 14:28:00 -07:00
Adam Coddington
156b6fb418 Hide original body from email message display in admin; bumping version number. 2013-06-11 22:32:13 -07:00
Adam Coddington
cd77dd1c93 Merging in upstream changes. 2013-06-06 01:11:04 -07:00
Adam Coddington
46960440d5 Typo. 2013-06-06 01:10:12 -07:00
Adam Coddington
af2f37a247 Remove M2M relationship between MessageAttachment and Message. 2013-06-06 01:03:16 -07:00
Adam Coddington
8a34ac211c Properly handle RFC2822 line continuations; resolves #4. 2013-06-05 12:43:28 -07:00
Adam Coddington
2a90953283 Adding new settings allowing one to specify a list of mimetypes that are permitted to be stored in the message body of the e-mail message model. 2013-03-11 21:00:53 -07:00
Patrick Craston
8fac7c9711 Only store text/plain and text/html in body field
When parsing multipart message it was storing the whole message as
string in database which could lead to database errors. Only want to
store the actual message text
2013-03-01 16:35:26 +00:00
Adam Coddington
ee6b4b3e1d Delete attachments after they are no longer referenced by an e-mail message. Fixes #1. Bumping version number to 1.8.3 2013-02-03 14:52:42 -08:00
Adam Coddington
5bd99b8b91 Be very careful about filename length. 2013-01-20 16:58:56 -08:00
Adam Coddington
895fcff4b7 Code cleanup; ensure no tb in the event of a very-long filename. 2013-01-20 16:51:10 -08:00
Adam Coddington
afa82b861c Adding get_text_body convenience method. 2013-01-20 14:27:15 -08:00
Adam Coddington
25f1a71725 Allow message to be saved without attachments. 2013-01-20 13:44:49 -08:00
Patrick Craston
ad4a1c00f4 Ignore p7s smime attachments 2013-01-15 15:48:15 +00:00
Patrick Craston
2e484aaed8 Add admin support for attachments --display correctly 2013-01-15 12:27:32 +00:00
Patrick Craston
645a723d09 Move Attachment model up 2013-01-15 12:11:08 +00:00
Patrick Craston
e3cd913fe7 Add attachment handling 2013-01-15 12:05:04 +00:00
Adam Coddington
af58c324f5 Adding unread/read flagging for individual messages. 2012-11-27 19:01:49 -08:00
Adam Coddington
9615568108 Modifying admin display; adding help text. 2012-10-28 12:41:36 -07:00
Adam Coddington
0cdf0e4126 Escape HTML in help text. 2012-10-28 12:27:20 -07:00
Adam Coddington
6a1394eded Fixing syntax bug. 2012-10-28 12:26:17 -07:00
Adam Coddington
77acc09e2f Allow specification of from e-mail on mailbox model. 2012-10-28 12:25:37 -07:00
Adam Coddington
188ac8093b Removing 'References' table; default django mail sending methods do not allow multi-line headers (which are required for setting references). 2012-10-28 12:03:31 -07:00
Adam Coddington
608ab9f6c4 Do not set message to returned value from sending. 2012-10-28 11:34:04 -07:00
Adam Coddington
ba71477f21 Misspelled import. 2012-10-28 11:33:06 -07:00
Adam Coddington
62231e5a08 Misspelled import. 2012-10-28 11:31:31 -07:00
Adam Coddington
dcb26e97b5 Set message-Id during reply process; build message references properly. 2012-10-28 11:29:56 -07:00
Adam Coddington
bbbb774102 Convert message to string, then consume message into Email object. 2012-10-28 10:54:24 -07:00