aboutsummaryrefslogtreecommitdiff
path: root/lib/mix/tasks/fix_ap_users.ex
diff options
context:
space:
mode:
authorlambda <pleromagit@rogerbraun.net>2018-03-08 12:29:02 +0000
committerlambda <pleromagit@rogerbraun.net>2018-03-08 12:29:02 +0000
commit460062f2b04220ffcd8f20aa842cc95582d1f849 (patch)
treef56c298bed6b289aa2dd81766862265ccef05947 /lib/mix/tasks/fix_ap_users.ex
parent0f2bf3eefb0adba13a3f3d37e8d8b1bd414a33e4 (diff)
parent611ca385dea3d611a97579000311cc42684305e6 (diff)
downloadpleroma-460062f2b04220ffcd8f20aa842cc95582d1f849.tar.gz
Merge branch 'feature/activitypub' into 'develop'
Feature/activitypub See merge request pleroma/pleroma!67
Diffstat (limited to 'lib/mix/tasks/fix_ap_users.ex')
-rw-r--r--lib/mix/tasks/fix_ap_users.ex25
1 files changed, 25 insertions, 0 deletions
diff --git a/lib/mix/tasks/fix_ap_users.ex b/lib/mix/tasks/fix_ap_users.ex
new file mode 100644
index 000000000..ff09074c3
--- /dev/null
+++ b/lib/mix/tasks/fix_ap_users.ex
@@ -0,0 +1,25 @@
+defmodule Mix.Tasks.FixApUsers do
+ use Mix.Task
+ import Mix.Ecto
+ import Ecto.Query
+ alias Pleroma.{Repo, User}
+
+ @shortdoc "Grab all ap users again"
+ def run([]) do
+ Mix.Task.run("app.start")
+
+ q = from u in User,
+ where: fragment("? @> ?", u.info, ^%{"ap_enabled" => true}),
+ where: u.local == false
+ users = Repo.all(q)
+
+ Enum.each(users, fn(user) ->
+ try do
+ IO.puts("Fetching #{user.nickname}")
+ Pleroma.Web.ActivityPub.Transmogrifier.upgrade_user_from_ap_id(user.ap_id, false)
+ rescue
+ e -> IO.inspect(e)
+ end
+ end)
+ end
+end