projects
/
akkoma
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Handle "users/:id" links as well. Fix comments in MR.
[akkoma]
/
lib
/
pleroma
/
web
/
ostatus
/
ostatus_controller.ex
diff --git
a/lib/pleroma/web/ostatus/ostatus_controller.ex
b/lib/pleroma/web/ostatus/ostatus_controller.ex
index af6e22c2b8c90e18c4aeefa1f9817568abf399b6..5dbee20e1c9429f112db4d8b0362ca9e2f31f070 100644
(file)
--- a/
lib/pleroma/web/ostatus/ostatus_controller.ex
+++ b/
lib/pleroma/web/ostatus/ostatus_controller.ex
@@
-16,7
+16,11
@@
defmodule Pleroma.Web.OStatus.OStatusController do
def feed_redirect(conn, %{"nickname" => nickname}) do
case get_format(conn) do
"html" ->
def feed_redirect(conn, %{"nickname" => nickname}) do
case get_format(conn) do
"html" ->
- Fallback.RedirectController.redirector(conn, nil)
+ with %User{} = user <- User.get_cached_by_nickname_or_id(nickname) do
+ Fallback.RedirectController.redirector_with_meta(conn, %{user: user})
+ else
+ nil -> {:error, :not_found}
+ end
"activity+json" ->
ActivityPubController.call(conn, :user)
"activity+json" ->
ActivityPubController.call(conn, :user)
@@
-134,9
+138,7
@@
defmodule Pleroma.Web.OStatus.OStatusController do
%User{} = user <- User.get_cached_by_ap_id(activity.data["actor"]) do
case format = get_format(conn) do
"html" ->
%User{} = user <- User.get_cached_by_ap_id(activity.data["actor"]) do
case format = get_format(conn) do
"html" ->
- conn
- |> put_resp_content_type("text/html")
- |> send_file(200, Application.app_dir(:pleroma, "priv/static/index.html"))
+ Fallback.RedirectController.redirector_with_meta(conn, %{activity: activity, user: user})
_ ->
represent_activity(conn, format, activity, user)
_ ->
represent_activity(conn, format, activity, user)
@@
-157,7
+159,7
@@
defmodule Pleroma.Web.OStatus.OStatusController do
conn,
"activity+json",
%Activity{data: %{"type" => "Create"}} = activity,
conn,
"activity+json",
%Activity{data: %{"type" => "Create"}} = activity,
- user
+
_
user
) do
object = Object.normalize(activity.data["object"])
) do
object = Object.normalize(activity.data["object"])
@@
-166,7
+168,7
@@
defmodule Pleroma.Web.OStatus.OStatusController do
|> json(ObjectView.render("object.json", %{object: object}))
end
|> json(ObjectView.render("object.json", %{object: object}))
end
- defp represent_activity(conn, "activity+json", _, _) do
+ defp represent_activity(
_
conn, "activity+json", _, _) do
{:error, :not_found}
end
{:error, :not_found}
end