diff --git a/lib/clacks/timeline.ex b/lib/clacks/timeline.ex index 8d8f518..96f2310 100644 --- a/lib/clacks/timeline.ex +++ b/lib/clacks/timeline.ex @@ -123,13 +123,24 @@ defmodule Clacks.Timeline do referenced_object: referenced_object, activity_actor: activity_actor ], + {n, activity, object, activity_actor, referenced_activity, referenced_object} + ) + |> Repo.all() + |> Enum.map(fn {n, activity, object, activity_actor, referenced_activity, referenced_object} -> + # unfortunately we can't use the select to set the associations because we need to handle the possibility of referenced_activity being nil + referenced_activity = + case referenced_activity do + nil -> nil + a -> %Activity{a | object: referenced_object} + end + %Notification{ n | activity: %Activity{activity | object: object, actor: activity_actor}, - referenced_activity: %Activity{referenced_activity | object: referenced_object} + referenced_activity: referenced_activity } - ) - |> Repo.all() + end) + |> IO.inspect() end defp restrict_to_actor(query, actor_id) do