From 2f297530a8ca174ac872d7b45ffe8229156e302e Mon Sep 17 00:00:00 2001 From: Romain Bignon Date: Mon, 12 Apr 2010 13:45:33 +0200 Subject: [PATCH] new Message attribute 'is_html' --- scripts/monboob | 14 ++++++++++---- weboob/backends/dlfp/backend.py | 6 ++++-- weboob/capabilities/messages.py | 3 ++- 3 files changed, 16 insertions(+), 7 deletions(-) diff --git a/scripts/monboob b/scripts/monboob index acd1431e..e69a21e9 100755 --- a/scripts/monboob +++ b/scripts/monboob @@ -119,19 +119,25 @@ class Monboob(ConsoleApplication): date = time.strftime('%a, %d %b %Y %H:%M:%S +0000', mail.get_date().timetuple()) msg_id = u'<%s.%s@%s>' % (backend.name, mail.get_full_id(), domain) - if self.config.get('html'): + if self.config.get('html') and mail.is_html: body = mail.get_content() content_type = 'html' else: - body = html2text(mail.get_content()) + if mail.is_html: + body = html2text(mail.get_content()) + else: + body = mail.get_content() content_type = 'plain' if mail.get_signature(): - if self.config.get('html'): + if self.config.get('html') and mail.is_html: body += u'

--
%s

' % mail.get_signature() else: body += u'\n\n-- \n' - body += html2text(mail.get_signature()) + if mail.is_html: + body += html2text(mail.get_signature()) + else: + body += mail.get_signature() # Header class is smart enough to try US-ASCII, then the charset we # provide, then fall back to UTF-8. diff --git a/weboob/backends/dlfp/backend.py b/weboob/backends/dlfp/backend.py index bda18d3a..9860934b 100644 --- a/weboob/backends/dlfp/backend.py +++ b/weboob/backends/dlfp/backend.py @@ -87,7 +87,8 @@ class DLFPBackend(Backend, ICapMessages, ICapMessagesReply): thread.author, article.datetime, content=''.join([thread.body, thread.part2]), - signature='URL: %s' % article.url) + signature='URL: %s' % article.url, + is_html=True) for comment in thread.iter_all_comments(): if not comment.id in seen[article.id]['comments']: @@ -103,7 +104,8 @@ class DLFPBackend(Backend, ICapMessages, ICapMessagesReply): comment.date, comment.reply_id, comment.body, - 'Score: %d' % comment.score) + 'Score: %d' % comment.score, + is_html=True) self.storage.set('seen', what, seen) self.storage.save() diff --git a/weboob/capabilities/messages.py b/weboob/capabilities/messages.py index 0faef3b1..8cba989d 100644 --- a/weboob/capabilities/messages.py +++ b/weboob/capabilities/messages.py @@ -24,7 +24,7 @@ import time from .cap import ICap class Message: - def __init__(self, thread_id, _id, title, sender, date=None, reply_id=u'', content=u'', signature=u''): + def __init__(self, thread_id, _id, title, sender, date=None, reply_id=u'', content=u'', signature=u'', is_html=False): self.thread_id = unicode(thread_id) self.id = unicode(_id) self.reply_id = unicode(reply_id) @@ -37,6 +37,7 @@ class Message: if date is None: date = datetime.datetime.utcnow() self.date = date + self.is_html = is_html def get_date_int(self): return int(time.strftime('%Y%m%d%H%M%S', self.get_date().timetuple()))