aboutsummaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorLain Iwakura <lain@soykaf.club>2017-11-27 17:24:52 +0100
committerLain Iwakura <lain@soykaf.club>2017-11-27 17:24:52 +0100
commitc680ae581d028144ebea414b4137433ac7ca8e6a (patch)
treeacbd95e8ab4c48332fbff75edf2b051be255639a /lib
parent89a8dc748525063afc673e49875d0b605df73d77 (diff)
downloadpleroma-c680ae581d028144ebea414b4137433ac7ca8e6a.tar.gz
Return xml notice at /notice path.
Diffstat (limited to 'lib')
-rw-r--r--lib/pleroma/web/ostatus/ostatus_controller.ex13
-rw-r--r--lib/pleroma/web/router.ex1
2 files changed, 14 insertions, 0 deletions
diff --git a/lib/pleroma/web/ostatus/ostatus_controller.ex b/lib/pleroma/web/ostatus/ostatus_controller.ex
index 1ac07546f..d442d16fd 100644
--- a/lib/pleroma/web/ostatus/ostatus_controller.ex
+++ b/lib/pleroma/web/ostatus/ostatus_controller.ex
@@ -86,6 +86,19 @@ defmodule Pleroma.Web.OStatus.OStatusController do
end
end
+ def notice(conn, %{"id" => id}) do
+ with %Activity{} = activity <- Repo.get(Activity, id),
+ %User{} = user <- User.get_cached_by_ap_id(activity.data["actor"]) do
+ case get_format(conn) do
+ "html" ->
+ conn
+ |> put_resp_content_type("text/html")
+ |> send_file(200, "priv/static/index.html")
+ _ -> represent_activity(conn, activity, user)
+ end
+ end
+ end
+
defp represent_activity(conn, activity, user) do
response = activity
|> ActivityRepresenter.to_simple_form(user, true)
diff --git a/lib/pleroma/web/router.ex b/lib/pleroma/web/router.ex
index f3c476fdc..6806e8a75 100644
--- a/lib/pleroma/web/router.ex
+++ b/lib/pleroma/web/router.ex
@@ -207,6 +207,7 @@ defmodule Pleroma.Web.Router do
get "/objects/:uuid", OStatus.OStatusController, :object
get "/activities/:uuid", OStatus.OStatusController, :activity
+ get "/notice/:id", OStatus.OStatusController, :notice
get "/users/:nickname/feed", OStatus.OStatusController, :feed
get "/users/:nickname", OStatus.OStatusController, :feed_redirect