Only run the fix-up tasks once.

This commit is contained in:
lain 2018-03-07 20:19:48 +01:00
parent a91adb146e
commit 8228ae96d8

View file

@ -266,9 +266,11 @@ def upgrade_user_from_ap_id(ap_id, async \\ true) do
data = data data = data
|> Map.put(:info, Map.merge(user.info, data[:info])) |> Map.put(:info, Map.merge(user.info, data[:info]))
already_ap = User.ap_enabled?(user)
{:ok, user} = User.upgrade_changeset(user, data) {:ok, user} = User.upgrade_changeset(user, data)
|> Repo.update() |> Repo.update()
if !already_ap do
# This could potentially take a long time, do it in the background # This could potentially take a long time, do it in the background
if async do if async do
Task.start(fn -> Task.start(fn ->
@ -277,6 +279,7 @@ def upgrade_user_from_ap_id(ap_id, async \\ true) do
else else
user_upgrade_task(user) user_upgrade_task(user)
end end
end
{:ok, user} {:ok, user}
else else