From eebe21a8c8edf4bfa48051d98589e829ac47d095 Mon Sep 17 00:00:00 2001 From: Sam Date: Fri, 23 Aug 2013 17:00:01 +1000 Subject: [PATCH] fix open id so it creates records properly --- lib/auth/open_id_authenticator.rb | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/lib/auth/open_id_authenticator.rb b/lib/auth/open_id_authenticator.rb index ab249f2bdff..667a34fd54e 100644 --- a/lib/auth/open_id_authenticator.rb +++ b/lib/auth/open_id_authenticator.rb @@ -29,10 +29,22 @@ class Auth::OpenIdAuthenticator < Auth::Authenticator result.user = user_open_id.try(:user) result.extra_data = { - openid_url: identity_url + openid_url: identity_url, + # note email may change by the time after_create_account runs + email: email } result.email_valid = @opts[:trusted] result end + + def after_create_account(user, auth) + data = auth[:extra_data] + UserOpenId.create( + user_id: user.id, + url: data[:openid_url], + email: data[:email], + active: true + ) + end end