summaryrefslogtreecommitdiff
path: root/service/pixelated/adapter/model/mail.py
diff options
context:
space:
mode:
authorFolker Bernitt <fbernitt@thoughtworks.com>2015-03-17 13:53:40 +0100
committerFolker Bernitt <fbernitt@thoughtworks.com>2015-03-17 13:53:40 +0100
commit67beba06bc4a3d0ebac358eb59c9987c02d21bac (patch)
tree7d109ff5aa0586677b1433882ccd6e265ed49bec /service/pixelated/adapter/model/mail.py
parente9a675d925778ef3ec6c38e235a71b25c1e3b344 (diff)
Don't fail to parse mail if neither Date nor Received header is avail.
- Issue #331
Diffstat (limited to 'service/pixelated/adapter/model/mail.py')
-rw-r--r--service/pixelated/adapter/model/mail.py8
1 files changed, 7 insertions, 1 deletions
diff --git a/service/pixelated/adapter/model/mail.py b/service/pixelated/adapter/model/mail.py
index f262d420..65e87f54 100644
--- a/service/pixelated/adapter/model/mail.py
+++ b/service/pixelated/adapter/model/mail.py
@@ -305,7 +305,13 @@ class PixelatedMail(Mail):
def _get_date(self):
date = self.hdoc.content.get('date', None)
if not date:
- date = self.hdoc.content['received'].split(";")[-1].strip()
+ received = self.hdoc.content.get('received', None)
+ if received:
+ date = received.split(";")[-1].strip()
+ else:
+ # we can't get a date for this mail, so lets just use now
+ logger.warning('Encountered a mail with missing date and received header fields. Subject %s' % self.hdoc.content.get('subject', None))
+ date = pixelated.support.date.iso_now()
return dateparser.parse(date).isoformat()
@property