ae34757775cafb88b797c34996145fecedc17d5c
[akkoma] / lib / mix / tasks / fix_ap_users.ex
1 defmodule Mix.Tasks.FixApUsers do
2 use Mix.Task
3 import Mix.Ecto
4 import Ecto.Query
5 alias Pleroma.{Repo, User}
6
7 @shortdoc "Grab all ap users again"
8 def run([]) do
9 Mix.Task.run("app.start")
10
11 q = from u in User,
12 where: fragment("? @> ?", u.info, ^%{"ap_enabled" => true})
13 users = Repo.all(q)
14
15 Enum.each(users, fn(user) ->
16 try do
17 IO.puts("Fetching #{user.nickname}")
18 Pleroma.Web.ActivityPub.Transmogrifier.upgrade_user_from_ap_id(user.ap_id, false)
19 rescue
20 e -> IO.inspect(e)
21 end
22 end)
23 end
24 end