support sending HTML messages

This commit is contained in:
Romain Bignon 2010-10-04 22:51:57 +02:00
commit 5ff69b8048
2 changed files with 13 additions and 5 deletions

View file

@ -139,7 +139,11 @@ class DLFPBackend(BaseBackend, ICapMessages, ICapMessagesPost):
assert message.thread
with self.browser:
return self.browser.post_reply(message.thread.id, message.parent.id, message.title, message.content)
return self.browser.post_reply(message.thread.id,
message.parent.id,
message.title,
message.content,
message.flags & message.IS_HTML)
def fill_thread(self, thread, fields):
return self.get_thread(thread)

View file

@ -54,7 +54,7 @@ class DLFP(BaseBrowser):
self.location(id2url(_id))
return self.page.get_article()
def post_reply(self, thread, reply_id, title, message):
def post_reply(self, thread, reply_id, title, message, is_html=False):
content_type = id2contenttype(thread)
thread_id = id2threadid(thread)
reply_id = int(reply_id)
@ -62,6 +62,11 @@ class DLFP(BaseBrowser):
if not content_type or not thread_id:
return False
if is_html:
format = 1
else:
format = 3
# Define every data fields
data = {'news_id': thread_id,
'com_parent': reply_id,
@ -70,7 +75,7 @@ class DLFP(BaseBrowser):
'referer': '%s://%s%s' % (self.PROTOCOL, self.DOMAIN, id2url(thread)),
'subject': unicode(title).encode('utf-8'),
'body': unicode(message).encode('utf-8'),
'format': 3,
'format': format,
'submit': 'Envoyer',
}
@ -78,8 +83,7 @@ class DLFP(BaseBrowser):
request = self.request_class(url, urllib.urlencode(data), {'Referer': url})
self.openurl(request).read()
# No message to send
return ()
return None
def login(self):
self.location('/login.html', 'login=%s&passwd=%s&isauto=1' % (self.username, self.password))