From 27c1cee035abcff01d06f8138fb669e24d169080 Mon Sep 17 00:00:00 2001 From: "louiz@4325f9fc-e183-4c21-96ce-0ab188b42d13" Date: Thu, 5 Aug 2010 21:32:17 +0000 Subject: Allow the user to limit the number of history messages. fixed #1658 --- src/multiuserchat.py | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) (limited to 'src/multiuserchat.py') diff --git a/src/multiuserchat.py b/src/multiuserchat.py index 431b33a8..0fbedd72 100644 --- a/src/multiuserchat.py +++ b/src/multiuserchat.py @@ -150,12 +150,19 @@ class MultiUserChat(object): """Join a new room""" pres = Presence(to='%s/%s' % (room, nick)) pres.setFrom('%s'%self.own_jid) - if not password: - pres.addChild(name='x', namespace=NS_MUC) - else: - item = pres.addChild(name='x', namespace=NS_MUC) - passwd = item.addChild(name='password') + x_tag = pres.addChild(name='x', namespace=NS_MUC) + if password: + passwd = x_tag.addChild(name='password') passwd.setData(password) + muc_history_length = config.get('muc_history_length', -1) + if muc_history_length >= 0: + history_tag = x_tag.addChild(name='history') + if muc_history_length == 0: + history_tag.setAttr('maxchars', 0) + else: + history_tag.setAttr('maxstanzas', muc_history_length) + from common import debug + debug('%s\n'% pres) self.connection.send(pres) def quit_room(self, room, nick, msg=None): -- cgit v1.2.3