From a8d5da509128c48aee8c5e0060ef53fa397e2122 Mon Sep 17 00:00:00 2001 From: Lance Stout Date: Sun, 6 Nov 2011 08:25:29 -0800 Subject: Restore original behaviour for auto_authorize and auto_subscribe. The change to using the new roster broke the original auto_* values and used per-roster versions. The original auto_* values will now set the behaviour globally. Use the per-roster values to override for a specific JID. --- sleekxmpp/roster/multi.py | 48 +++++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 46 insertions(+), 2 deletions(-) (limited to 'sleekxmpp/roster') diff --git a/sleekxmpp/roster/multi.py b/sleekxmpp/roster/multi.py index e9f3389e..ee56f2a8 100644 --- a/sleekxmpp/roster/multi.py +++ b/sleekxmpp/roster/multi.py @@ -48,8 +48,8 @@ class Roster(object): """ self.xmpp = xmpp self.db = db - self.auto_authorize = True - self.auto_subscribe = True + self._auto_authorize = True + self._auto_subscribe = True self._rosters = {} if self.db: @@ -138,3 +138,47 @@ class Roster(object): ppriority=ppriority, pnick=pnick, pto=pto) + + @property + def auto_authorize(self): + """ + Auto accept or deny subscription requests. + + If True, auto accept subscription requests. + If False, auto deny subscription requests. + If None, don't automatically respond. + """ + return self._auto_authorize + + @auto_authorize.setter + def auto_authorize(self, value): + """ + Auto accept or deny subscription requests. + + If True, auto accept subscription requests. + If False, auto deny subscription requests. + If None, don't automatically respond. + """ + self._auto_authorize = value + for node in self._rosters: + self._rosters[node].auto_authorize = value + + @property + def auto_subscribe(self): + """ + Auto send requests for mutual subscriptions. + + If True, auto send mutual subscription requests. + """ + return self._auto_subscribe + + @auto_subscribe.setter + def auto_subscribe(self, value): + """ + Auto send requests for mutual subscriptions. + + If True, auto send mutual subscription requests. + """ + self._auto_subscribe = value + for node in self._rosters: + self._rosters[node].auto_subscribe = value -- cgit v1.2.3