refactor: small changes from PR review
All checks were successful
continuous-integration/drone/push Build is passing
All checks were successful
continuous-integration/drone/push Build is passing
This commit is contained in:
parent
918b02a714
commit
55fb845855
2 changed files with 7 additions and 22 deletions
|
|
@ -190,8 +190,9 @@ defmodule Mv.Accounts.User do
|
|||
changeset
|
||||
|> Ash.Changeset.change_attribute(:oidc_id, oidc_id)
|
||||
# Update email if it differs from OIDC provider
|
||||
# change_attribute/3 already checks if value matches existing value
|
||||
|> then(fn cs ->
|
||||
if new_email && to_string(cs.data.email) != new_email do
|
||||
if new_email do
|
||||
Ash.Changeset.change_attribute(cs, :email, new_email)
|
||||
else
|
||||
cs
|
||||
|
|
|
|||
|
|
@ -69,13 +69,11 @@ defmodule Mv.Accounts.User.Validations.OidcEmailCollision do
|
|||
# User exists with this email - check if it's an upsert or registration
|
||||
is_upsert = not is_nil(existing_oidc_user)
|
||||
|
||||
handle_existing_user(
|
||||
user_with_email,
|
||||
new_oidc_id,
|
||||
user_info,
|
||||
is_upsert,
|
||||
existing_oidc_user
|
||||
)
|
||||
if is_upsert do
|
||||
handle_upsert_scenario(user_with_email, user_info, existing_oidc_user)
|
||||
else
|
||||
handle_create_scenario(user_with_email, new_oidc_id, user_info)
|
||||
end
|
||||
|
||||
{:error, error} ->
|
||||
# Database error - log for debugging but don't expose internals to user
|
||||
|
|
@ -84,20 +82,6 @@ defmodule Mv.Accounts.User.Validations.OidcEmailCollision do
|
|||
end
|
||||
end
|
||||
|
||||
defp handle_existing_user(
|
||||
user_with_email,
|
||||
new_oidc_id,
|
||||
user_info,
|
||||
is_upsert,
|
||||
existing_oidc_user
|
||||
) do
|
||||
if is_upsert do
|
||||
handle_upsert_scenario(user_with_email, user_info, existing_oidc_user)
|
||||
else
|
||||
handle_create_scenario(user_with_email, new_oidc_id, user_info)
|
||||
end
|
||||
end
|
||||
|
||||
# Handle email update for existing OIDC user
|
||||
defp handle_upsert_scenario(user_with_email, user_info, existing_oidc_user) do
|
||||
cond do
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue