Merge branch 'feld-warnings' into 'develop'
[akkoma] / lib / mix / tasks / generate_password_reset.ex
1 defmodule Mix.Tasks.GeneratePasswordReset do
2 use Mix.Task
3 alias Pleroma.User
4
5 @shortdoc "Generate password reset link for user"
6 def run([nickname]) do
7 Mix.Task.run("app.start")
8
9 with %User{local: true} = user <- User.get_by_nickname(nickname),
10 {:ok, token} <- Pleroma.PasswordResetToken.create_token(user) do
11 IO.puts("Generated password reset token for #{user.nickname}")
12
13 IO.puts(
14 "Url: #{
15 Pleroma.Web.Router.Helpers.util_url(
16 Pleroma.Web.Endpoint,
17 :show_password_reset,
18 token.token
19 )
20 }"
21 )
22 else
23 _ ->
24 IO.puts("No local user #{nickname}")
25 end
26 end
27 end