Skip to content

Commit 5f3d84a

Browse files
Fix referral ID missing in external login flows
Co-authored-by: BenjaminMichaelis <[email protected]>
1 parent ab31970 commit 5f3d84a

File tree

1 file changed

+4
-0
lines changed

1 file changed

+4
-0
lines changed

EssentialCSharp.Web/Areas/Identity/Pages/Account/ExternalLogin.cshtml.cs

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -80,6 +80,8 @@ public async Task<IActionResult> OnGetCallbackAsync(string? returnUrl = null, st
8080
if (user != null)
8181
{
8282
await referralService.EnsureReferralIdAsync(user);
83+
// Refresh sign-in to pick up the newly added referral ID claim
84+
await signInManager.RefreshSignInAsync(user);
8385
}
8486
return LocalRedirect(returnUrl);
8587
}
@@ -189,6 +191,8 @@ await emailSender.SendEmailAsync(Input.Email, "Confirm your email",
189191
return RedirectToPage("./RegisterConfirmation", new { Email = Input.Email });
190192
}
191193

194+
// Ensure referral ID is set for the new user before signing in
195+
await referralService.EnsureReferralIdAsync(user);
192196
await signInManager.SignInAsync(user, isPersistent: false, info.LoginProvider);
193197
return LocalRedirect(returnUrl);
194198
}

0 commit comments

Comments
 (0)