Use router helper to generate reset password link
[akkoma] / lib / pleroma / web / admin_api / admin_api_controller.ex
index 03a73053b91d804645907a30c160bbc4394cb299..b2df1e5b83680bb11d9a7180c3010bf41985bfbf 100644 (file)
@@ -17,7 +17,9 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIController do
   alias Pleroma.Web.AdminAPI.ReportView
   alias Pleroma.Web.AdminAPI.Search
   alias Pleroma.Web.CommonAPI
+  alias Pleroma.Web.Endpoint
   alias Pleroma.Web.MastodonAPI.StatusView
+  alias Pleroma.Web.Router
 
   import Pleroma.Web.ControllerHelper, only: [json_response: 3]
 
@@ -432,13 +434,11 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIController do
   def get_password_reset(conn, %{"nickname" => nickname}) do
     (%User{local: true} = user) = User.get_cached_by_nickname(nickname)
     {:ok, token} = Pleroma.PasswordResetToken.create_token(user)
-    host = Pleroma.Config.get([Pleroma.Web.Endpoint, :url, :host])
-    protocol = Pleroma.Config.get([Pleroma.Web.Endpoint, :protocol])
 
     conn
     |> json(%{
       token: token.token,
-      link: "#{protocol}://#{host}/api/pleroma/password_reset/#{token}"
+      link: Router.Helpers.reset_password_url(Endpoint, :reset, token.token)
     })
   end
 
@@ -447,11 +447,9 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIController do
       params
       |> Map.put("type", "Flag")
       |> Map.put("skip_preload", true)
+      |> Map.put("total", true)
 
-    reports =
-      []
-      |> ActivityPub.fetch_activities(params)
-      |> Enum.reverse()
+    reports = ActivityPub.fetch_activities([], params)
 
     conn
     |> put_view(ReportView)