projects
/
akkoma
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
activitypub: utils: update the state of *any* pending follow relationship that matche...
[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 f7ba5738937f4a32c9bbc8352262ba992472a2ab..297aca2f976948ef18c6a373fb39d19c38416217 100644
(file)
--- a/
lib/pleroma/web/ostatus/ostatus_controller.ex
+++ b/
lib/pleroma/web/ostatus/ostatus_controller.ex
@@
-93,8
+93,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
@@
-145,10
+144,17
@@
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" ->
- # Only Create actvities have a map at object
- if is_map(activity.data["object"]) do
+ if activity.data["type"] == "Create" do
+ %Object{} = object = Object.normalize(activity.data["object"])
+
Fallback.RedirectController.redirector_with_meta(conn, %{
Fallback.RedirectController.redirector_with_meta(conn, %{
- activity: activity,
+ object: object,
+ url:
+ Pleroma.Web.Router.Helpers.o_status_url(
+ Pleroma.Web.Endpoint,
+ :notice,
+ activity.id
+ ),
user: user
})
else
user: user
})
else
@@
-160,10
+166,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