From eb7017fd9a60ad4347c401552520bb049ec4fc07 Mon Sep 17 00:00:00 2001 From: mdipierro Date: Fri, 4 Dec 2015 12:14:39 -0600 Subject: [PATCH] fixed auth.settings.register_onaccept is not firing when signing up through third-party #1081 --- gluon/tools.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/gluon/tools.py b/gluon/tools.py index 126df8fd..6a7a021e 100644 --- a/gluon/tools.py +++ b/gluon/tools.py @@ -2258,7 +2258,8 @@ class Auth(object): if not 'first_name' in keys and 'first_name' in table_user.fields: guess = keys.get('email', 'anonymous').split('@')[0] keys['first_name'] = keys.get('username', guess) - user_id = table_user.insert(**table_user._filter_fields(keys)) + form = table_user._filter_fields(keys) + user_id = table_user.insert(**form) user = table_user[user_id] if self.settings.create_user_groups: group_id = self.add_group( @@ -2268,6 +2269,8 @@ class Auth(object): self.add_membership(self.settings.everybody_group_id, user_id) if login: self.user = user + if self.settings.register_onaccept: + callback(self.settings.register_onaccept, form) return user def basic(self, basic_auth_realm=False):