X-Git-Url: https://git.squeep.com/?a=blobdiff_plain;ds=sidebyside;f=lib%2Fpleroma%2Fweb%2Fweb_finger.ex;h=15002b29fab6bb038747b4ff4909d585a12386e5;hb=2c0fe2ea9e32d01caa1bc31093a7ddfdc2793659;hp=2de945ae514b42d3c0dd0fad80fb1234eaeba3ea;hpb=7d8f610720abdadeff9238aa8a345a91e473e0fa;p=akkoma
diff --git a/lib/pleroma/web/web_finger.ex b/lib/pleroma/web/web_finger.ex
index 2de945ae5..15002b29f 100644
--- a/lib/pleroma/web/web_finger.ex
+++ b/lib/pleroma/web/web_finger.ex
@@ -1,5 +1,5 @@
# Pleroma: A lightweight social networking server
-# Copyright © 2017-2020 Pleroma Authors
+# Copyright © 2017-2021 Pleroma Authors
# SPDX-License-Identifier: AGPL-3.0-only
defmodule Pleroma.Web.WebFinger do
@@ -59,7 +59,7 @@ defmodule Pleroma.Web.WebFinger do
end
defp gather_aliases(%User{} = user) do
- [user.ap_id] ++ user.also_known_as
+ [user.ap_id | user.also_known_as]
end
def represent_user(user, "JSON") do
@@ -76,8 +76,9 @@ defmodule Pleroma.Web.WebFinger do
{:ok, user} = User.ensure_keys_present(user)
aliases =
- gather_aliases(user)
- |> Enum.map(fn the_alias -> {:Alias, the_alias} end)
+ user
+ |> gather_aliases()
+ |> Enum.map(&{:Alias, &1})
links =
gather_links(user)
@@ -123,6 +124,9 @@ defmodule Pleroma.Web.WebFinger do
{"application/ld+json; profile=\"https://www.w3.org/ns/activitystreams\"", "self"} ->
Map.put(data, "ap_id", link["href"])
+ {nil, "http://ostatus.org/schema/1.0/subscribe"} ->
+ Map.put(data, "subscribe_address", link["template"])
+
_ ->
Logger.debug("Unhandled type: #{inspect(link["type"])}")
data