Mercurial > libervia-backend
diff plugins/plugin_xep_0077.py @ 169:06985b6ad23a
SàT: plugin 0077 & 0100: fixed profile management
author | Goffi <goffi@goffi.org> |
---|---|
date | Thu, 12 Aug 2010 12:30:36 +0800 |
parents | 6be927a465ed |
children |
line wrap: on
line diff
--- a/plugins/plugin_xep_0077.py Mon Aug 09 22:06:56 2010 +0800 +++ b/plugins/plugin_xep_0077.py Thu Aug 12 12:30:36 2010 +0800 @@ -50,9 +50,9 @@ host.bridge.addMethod("in_band_register", ".communication", in_sign='ss', out_sign='s', method=self.in_band_register) host.bridge.addMethod("in_band_submit", ".request", in_sign='sa(ss)', out_sign='s', method=self.in_band_submit) - def addTrigger(self, target, cb): + def addTrigger(self, target, cb, profile): """Add a callback which is called when registration to target is successful""" - self.triggers[target] = cb + self.triggers[target] = (cb, profile) def reg_ok(self, answer): """Called after the first get IQ""" @@ -99,7 +99,8 @@ answer_data={"message":_("Registration successfull")} self.host.bridge.actionResult(answer_type, answer['id'], answer_data) if self.triggers.has_key(answer["from"]): - self.triggers[answer["from"]](answer["from"]) + callback,profile = self.triggers[answer["from"]] + callback(answer["from"], profile) del self.triggers[answer["from"]] def registrationFailure(self, failure): @@ -117,9 +118,9 @@ if self.triggers.has_key(answer["from"]): del self.triggers[answer["from"]] - def in_band_submit(self, action, target, fields): + def in_band_submit(self, action, target, fields, profile): """Submit a form for registration, using data_form""" - id, deferred = self.host.submitForm(action, target, fields) + id, deferred = self.host.submitForm(action, target, fields, profile) if action == 'CANCEL': deferred.addCallbacks(self.unregistrationAnswer, self.unregistrationFailure) else: