summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorlain <lain@soykaf.club>2019-11-13 10:16:00 +0000
committerlain <lain@soykaf.club>2019-11-13 10:16:00 +0000
commitfacc37aaa6db427ef4d6a1023247997d404bf976 (patch)
tree112ef8776bafa40da4d700b803804db305dbde8f
parent1025c526c003460e62ddfff09ba65461feceb1f6 (diff)
parent62f3a93049649dee0ccd7b883887be2fd343fb3e (diff)
Merge branch 'static-remote-redirect' into 'develop'
For remote notices, redirect to the original instead of 404 in static-fe See merge request pleroma/pleroma!1974
-rw-r--r--lib/pleroma/web/static_fe/static_fe_controller.ex5
-rw-r--r--test/web/static_fe/static_fe_controller_test.exs4
2 files changed, 7 insertions, 2 deletions
diff --git a/lib/pleroma/web/static_fe/static_fe_controller.ex b/lib/pleroma/web/static_fe/static_fe_controller.ex
index 5e60c82b0..ba44b8a4f 100644
--- a/lib/pleroma/web/static_fe/static_fe_controller.ex
+++ b/lib/pleroma/web/static_fe/static_fe_controller.ex
@@ -77,6 +77,11 @@ defmodule Pleroma.Web.StaticFE.StaticFEController do
render(conn, "conversation.html", %{activities: timeline, meta: meta})
else
+ %Activity{object: %Object{data: data}} ->
+ conn
+ |> put_status(:found)
+ |> redirect(external: data["url"] || data["external_url"] || data["id"])
+
_ ->
conn
|> put_status(404)
diff --git a/test/web/static_fe/static_fe_controller_test.exs b/test/web/static_fe/static_fe_controller_test.exs
index effdfbeb3..b8fb67b22 100644
--- a/test/web/static_fe/static_fe_controller_test.exs
+++ b/test/web/static_fe/static_fe_controller_test.exs
@@ -151,7 +151,7 @@ defmodule Pleroma.Web.StaticFE.StaticFEControllerTest do
assert html_response(conn, 404) =~ "not found"
end
- test "404 for remote cached status", %{conn: conn} do
+ test "302 for remote cached status", %{conn: conn} do
user = insert(:user)
message = %{
@@ -175,7 +175,7 @@ defmodule Pleroma.Web.StaticFE.StaticFEControllerTest do
|> put_req_header("accept", "text/html")
|> get("/notice/#{activity.id}")
- assert html_response(conn, 404) =~ "not found"
+ assert html_response(conn, 302) =~ "redirected"
end
end
end