projects
/
akkoma
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge branch 'develop' into 'develop'
[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 4844b84ad857fc5f2e6608985c6dacf51313bc3e..302ff38a457716b06e557892c2315ce7aa1d6e0d 100644
(file)
--- a/
lib/pleroma/web/ostatus/ostatus_controller.ex
+++ b/
lib/pleroma/web/ostatus/ostatus_controller.ex
@@
-14,6
+14,7
@@
defmodule Pleroma.Web.OStatus.OStatusController do
alias Pleroma.Web.ActivityPub.ActivityPub
plug(Pleroma.Web.FederatingPlug when action in [:salmon_incoming])
alias Pleroma.Web.ActivityPub.ActivityPub
plug(Pleroma.Web.FederatingPlug when action in [:salmon_incoming])
+
action_fallback(:errors)
def feed_redirect(conn, %{"nickname" => nickname}) do
action_fallback(:errors)
def feed_redirect(conn, %{"nickname" => nickname}) do
@@
-93,8
+94,7
@@
defmodule Pleroma.Web.OStatus.OStatusController do
ActivityPubController.call(conn, :object)
else
with id <- o_status_url(conn, :object, uuid),
ActivityPubController.call(conn, :object)
else
with id <- o_status_url(conn, :object, uuid),
- {_, %Activity{} = activity} <-
- {:activity, Activity.get_create_activity_by_object_ap_id(id)},
+ {_, %Activity{} = activity} <- {:activity, Activity.get_create_by_object_ap_id(id)},
{_, true} <- {:public?, ActivityPub.is_public?(activity)},
%User{} = user <- User.get_cached_by_ap_id(activity.data["actor"]) do
case get_format(conn) do
{_, true} <- {:public?, ActivityPub.is_public?(activity)},
%User{} = user <- User.get_cached_by_ap_id(activity.data["actor"]) do
case get_format(conn) do
@@
-150,6
+150,12
@@
defmodule Pleroma.Web.OStatus.OStatusController do
Fallback.RedirectController.redirector_with_meta(conn, %{
object: object,
Fallback.RedirectController.redirector_with_meta(conn, %{
object: object,
+ url:
+ Pleroma.Web.Router.Helpers.o_status_url(
+ Pleroma.Web.Endpoint,
+ :notice,
+ activity.id
+ ),
user: user
})
else
user: user
})
else
@@
-161,10
+167,13
@@
defmodule Pleroma.Web.OStatus.OStatusController do
end
else
{:public?, false} ->
end
else
{:public?, false} ->
- {:error, :not_found}
+ conn
+ |> put_status(404)
+ |> Fallback.RedirectController.redirector(nil, 404)
{:activity, nil} ->
{:activity, nil} ->
- {:error, :not_found}
+ conn
+ |> Fallback.RedirectController.redirector(nil, 404)
e ->
e
e ->
e