def render_announcement_preference_box(self, req, panel): supported_realms = {} for producer in self.producers: for realm in producer.realms(): for distributor in self.distributors: for transport in distributor.transports(): for fmtr in self.formatters: for style in fmtr.styles(transport, realm): if realm not in supported_realms: supported_realms[realm] = set() supported_realms[realm].add(style) settings = {} for realm in supported_realms: name = 'xmpp_format_%s' % realm settings[realm] = SubscriptionSetting( self.env, name, XmppDistributor(self.env).xmpp_format_setting.default) if req.method == "POST": for realm, setting in settings.items(): name = 'xmpp_format_%s' % realm setting.set_user_setting(req.session, req.args.get(name), save=False) req.session.save() prefs = {} for realm, setting in settings.items(): prefs[realm] = setting.get_user_setting(req.session.sid)[0] data = dict( realms=supported_realms, preferences=prefs, ) return "prefs_announcer_xmpp.html", data
def _get_preferred_format(self, sid, realm=None): if realm: name = 'xmpp_format_%s' % realm else: name = 'xmpp_format' SubscriptionSetting(self.env, name, self.xmpp_format_setting.default) return self.xmpp_format_setting.get_user_setting(sid)[0]
def _settings(self): settings = {} for p in ('new_posts', 'all'): settings[p] = BoolSubscriptionSetting(self.env, 'fullblog_%s'%p) settings['my_posts'] = BoolSubscriptionSetting( self.env, 'fullblog_my_posts', self.always_notify_author ) settings['author_posts'] = SubscriptionSetting( self.env, 'fullblog_author_posts' ) return settings
def _setting(self): return SubscriptionSetting(self.env, 'watch_users')
def __init__(self): self.connections = {} self.delivery_queue = None self.xmpp_format_setting = SubscriptionSetting(self.env, 'xmpp_format', self.default_format)
def __init__(self): self.setting = SubscriptionSetting(self.env, 'specified_xmpp')
def _setting(self): return SubscriptionSetting(self.env, 'wiki_pattern')