handle multiple receivers in messages

This commit is contained in:
Christophe Benz 2010-11-22 15:06:25 +01:00
commit 18e02f2fea
11 changed files with 46 additions and 34 deletions

View file

@ -168,7 +168,7 @@ class AuMBackend(BaseBackend, ICapMessages, ICapMessagesPost, ICapDating, ICapCh
id=mail.message_id,
title=mail.title,
sender=mail.sender,
receiver=mail.name if mail.sender == my_name else my_name, # TODO: me
receivers=[mail.name if mail.sender == my_name else my_name], # TODO: me
date=mail.date,
content=mail.content,
signature=mail.signature,
@ -239,7 +239,7 @@ class AuMBackend(BaseBackend, ICapMessages, ICapMessagesPost, ICapDating, ICapCh
id=self.MAGIC_ID_BASKET,
title=thread.title,
sender=profile.get_name(),
receiver=self.browser.get_my_name(),
receivers=[self.browser.get_my_name()],
date=None, # now
content='You are taken in her basket!',
signature=profile.get_profile_text(),

View file

@ -98,7 +98,7 @@ class DLFPBackend(BaseBackend, ICapMessages, ICapMessagesPost):
id=0, # root message
title=content.title,
sender=content.author,
receiver=None,
receivers=None,
date=thread.date, #TODO XXX WTF this is None
parent=None,
content=''.join([content.body, content.part2]),
@ -123,7 +123,7 @@ class DLFPBackend(BaseBackend, ICapMessages, ICapMessagesPost):
id=com.id,
title=com.title,
sender=com.author,
receiver=None,
receivers=None,
date=com.date,
parent=parent,
content=com.body,

View file

@ -69,7 +69,7 @@ class FourChanBackend(BaseBackend, ICapMessages):
id=0, # root message
title=_thread.filename,
sender=_thread.author,
receiver=None,
receivers=None,
date=_thread.datetime,
parent=None,
content=_thread.text,
@ -87,7 +87,7 @@ class FourChanBackend(BaseBackend, ICapMessages):
id=comment.id,
title=_thread.filename,
sender=comment.author,
receiver=None,
receivers=None,
date=comment.datetime,
parent=parent,
content=comment.text,

View file

@ -63,7 +63,7 @@ class NewsfeedBackend(BaseBackend, ICapMessages):
id=0,
title=entry.title,
sender=entry.author,
receiver=None,
receivers=None,
date=entry.datetime,
parent=None,
content=content,

View file

@ -18,8 +18,6 @@
from __future__ import with_statement
import re
from weboob.capabilities.messages import CantSendMessage, ICapMessages, ICapMessagesPost
from weboob.capabilities.account import ICapAccount, StatusField
from weboob.tools.backend import BaseBackend
@ -56,6 +54,5 @@ class SfrBackend(BaseBackend, ICapAccount, ICapMessages, ICapMessagesPost):
def post_message(self, message):
if not message.content.strip():
raise CantSendMessage(u'Message content is empty.')
message.receiver = ','.join(re.sub(' +', '', receiver) for receiver in message.receiver.split(','))
with self.browser:
self.browser.post_message(message)

View file

@ -39,12 +39,12 @@ class ComposePage(BasePage):
return remaining_regex.match(text).groupdict().get('nb')
def post_message(self, message):
receiver_list = [receiver.strip() for receiver in message.receiver.split(',')]
receiver_list = [re.sub(' +', '', receiver) for receiver in message.receivers]
for receiver in receiver_list:
if self.phone_regex.match(receiver) is None:
raise CantSendMessage(u'Invalid receiver: %s' % receiver)
self.browser.select_form(nr=0)
self.browser['msisdns'] = message.receiver
self.browser['msisdns'] = ','.join(receiver_list)
self.browser['textMessage'] = message.content
self.browser.submit()