Fix masto api context.
authorRoger Braun <roger@rogerbraun.net>
Sun, 10 Sep 2017 15:20:53 +0000 (17:20 +0200)
committerRoger Braun <roger@rogerbraun.net>
Sun, 10 Sep 2017 15:20:53 +0000 (17:20 +0200)
lib/pleroma/web/mastodon_api/mastodon_api_controller.ex

index 900f9e3da1a15ada7f6d0fa693b2c42e262938e9..1aa7f43ab0d6cadc4a6c0731051de320be6ab1f7 100644 (file)
@@ -64,10 +64,11 @@ defmodule Pleroma.Web.MastodonAPI.MastodonAPIController do
   def get_context(%{assigns: %{user: user}} = conn, %{"id" => id}) do
     with %Activity{} = activity <- Repo.get(Activity, id),
          activities <- ActivityPub.fetch_activities_for_context(activity.data["object"]["context"]),
-         %{true: ancestors, false: descendants} <- Enum.group_by(activities, fn (%{id: id}) -> id < activity.id end) do
+         activities <- activities |> Enum.filter(fn (%{id: aid}) -> to_string(aid) != to_string(id) end),
+         grouped_activities <- Enum.group_by(activities, fn (%{id: id}) -> id < activity.id end) do
       result = %{
-        ancestors: StatusView.render("index.json", for: user, activities: ancestors, as: :activity) |> Enum.reverse,
-        descendants: StatusView.render("index.json", for: user, activities: descendants, as: :activity) |> Enum.reverse,
+        ancestors: StatusView.render("index.json", for: user, activities: grouped_activities[true] || [], as: :activity) |> Enum.reverse,
+        descendants: StatusView.render("index.json", for: user, activities: grouped_activities[false] || [], as: :activity) |> Enum.reverse,
       }
 
       json(conn, result)