Transmogrifier: fix incoming objects with invalid likes

This commit is contained in:
href 2019-01-27 19:27:16 +01:00
parent 6383fa3a5d
commit 77f2137383
No known key found for this signature in database
GPG Key ID: EE8296C1A152C325

View File

@ -141,11 +141,11 @@ defmodule Pleroma.Web.ActivityPub.Transmogrifier do
|> Map.put("actor", get_actor(%{"actor" => actor})) |> Map.put("actor", get_actor(%{"actor" => actor}))
end end
def fix_likes(%{"likes" => likes} = object) # Check for standardisation
when is_bitstring(likes) do # This is what Peertube does
# Check for standardisation # curl -H 'Accept: application/activity+json' $likes | jq .totalItems
# This is what Peertube does # Prismo returns only an integer (count) as "likes"
# curl -H 'Accept: application/activity+json' $likes | jq .totalItems def fix_likes(%{"likes" => likes} = object) when not is_map(likes) do
object object
|> Map.put("likes", []) |> Map.put("likes", [])
|> Map.put("like_count", 0) |> Map.put("like_count", 0)