Commit c9280b97 authored by Ariadne Conill's avatar Ariadne Conill

rework to use properties instead of compound typing, per SocialCG

parent 189a2889
...@@ -1106,13 +1106,7 @@ defp object_to_user_data(data) do ...@@ -1106,13 +1106,7 @@ defp object_to_user_data(data) do
locked = data["manuallyApprovesFollowers"] || false locked = data["manuallyApprovesFollowers"] || false
data = Transmogrifier.maybe_fix_user_object(data) data = Transmogrifier.maybe_fix_user_object(data)
discoverable = data["discoverable"] || false discoverable = data["discoverable"] || false
invisible = data["invisible"] || false
invisible =
if is_list(data["type"]) do
Enum.member?(data["type"], "Invisible")
else
false
end
user_data = %{ user_data = %{
ap_id: data["id"], ap_id: data["id"],
......
...@@ -600,8 +600,7 @@ def handle_incoming( ...@@ -600,8 +600,7 @@ def handle_incoming(
"Person", "Person",
"Application", "Application",
"Service", "Service",
"Organization", "Organization"
["Application", "Invisible"]
] do ] do
with %User{ap_id: ^actor_id} = actor <- User.get_cached_by_ap_id(object["id"]) do with %User{ap_id: ^actor_id} = actor <- User.get_cached_by_ap_id(object["id"]) do
{:ok, new_user_data} = ActivityPub.user_data_from_user_object(object) {:ok, new_user_data} = ActivityPub.user_data_from_user_object(object)
......
...@@ -55,7 +55,8 @@ def render("service.json", %{user: user}) do ...@@ -55,7 +55,8 @@ def render("service.json", %{user: user}) do
"owner" => user.ap_id, "owner" => user.ap_id,
"publicKeyPem" => public_key "publicKeyPem" => public_key
}, },
"endpoints" => endpoints "endpoints" => endpoints,
"invisible" => User.invisible?(user)
} }
|> Map.merge(Utils.make_json_ld_header()) |> Map.merge(Utils.make_json_ld_header())
end end
......
...@@ -19,6 +19,7 @@ ...@@ -19,6 +19,7 @@
"value": "schema:value", "value": "schema:value",
"sensitive": "as:sensitive", "sensitive": "as:sensitive",
"litepub": "http://litepub.social/ns#", "litepub": "http://litepub.social/ns#",
"invisible": "litepub:invisible",
"directMessage": "litepub:directMessage", "directMessage": "litepub:directMessage",
"listMessage": { "listMessage": {
"@id": "litepub:listMessage", "@id": "litepub:listMessage",
......
...@@ -12,7 +12,8 @@ ...@@ -12,7 +12,8 @@
"Emoji": "toot:Emoji" "Emoji": "toot:Emoji"
}], }],
"id": "http://mastodon.example.org/users/admin", "id": "http://mastodon.example.org/users/admin",
"type": ["Application", "Invisible"], "type": "Application",
"invisible": true,
"following": "http://mastodon.example.org/users/admin/following", "following": "http://mastodon.example.org/users/admin/following",
"followers": "http://mastodon.example.org/users/admin/followers", "followers": "http://mastodon.example.org/users/admin/followers",
"inbox": "http://mastodon.example.org/users/admin/inbox", "inbox": "http://mastodon.example.org/users/admin/inbox",
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment