From a7ed8a964624025e326991771522d41e2cebae93 Mon Sep 17 00:00:00 2001 From: Benjamin Dauvergne Date: Thu, 3 Jul 2014 14:58:06 +0200 Subject: [PATCH] allauth_authentic2/provider: update user first_name and last_name event after its first connection --- portail_citoyen2/allauth_authentic2/provider.py | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/portail_citoyen2/allauth_authentic2/provider.py b/portail_citoyen2/allauth_authentic2/provider.py index 850cb10..1fc5a58 100644 --- a/portail_citoyen2/allauth_authentic2/provider.py +++ b/portail_citoyen2/allauth_authentic2/provider.py @@ -48,3 +48,17 @@ class Authentic2Provider(OAuth2Provider): providers.registry.register(Authentic2Provider) + +from allauth.socialaccount.signals import pre_social_login +from django.dispatch import receiver + +@receiver(pre_social_login) +def pre_social_login_populate_user(sender, request, sociallogin, **kwargs): + account = sociallogin.account + data = account.extra_data + user = account.user + if 'first_name' in data: + user.first_name = data['first_name'] + if 'last_name' in data: + user.last_name = data['last_name'] + user.save()