Merge branch 'develop' of https://git.pleroma.social/pleroma/pleroma into develop
[akkoma] / lib / pleroma / web / feed / feed_view.ex
index 2e7db1ebbd3966ac4cee2ca1bbd0b8ef813683b1..e18adaea898bacabda588a85a90a563070d3ba11 100644 (file)
@@ -1,5 +1,5 @@
 # Pleroma: A lightweight social networking server
-# Copyright © 2017-2019 Pleroma Authors <https://pleroma.social/>
+# Copyright © 2017-2020 Pleroma Authors <https://pleroma.social/>
 # SPDX-License-Identifier: AGPL-3.0-only
 
 defmodule Pleroma.Web.Feed.FeedView do
@@ -22,16 +22,28 @@ defmodule Pleroma.Web.Feed.FeedView do
 
   def pub_date(%DateTime{} = date), do: Timex.format!(date, "{RFC822}")
 
-  def prepare_activity(activity) do
+  def prepare_activity(activity, opts \\ []) do
     object = activity_object(activity)
 
+    actor =
+      if opts[:actor] do
+        Pleroma.User.get_cached_by_ap_id(activity.actor)
+      end
+
     %{
       activity: activity,
       data: Map.get(object, :data),
-      object: object
+      object: object,
+      actor: actor
     }
   end
 
+  def most_recent_update(activities) do
+    with %{updated_at: updated_at} <- List.first(activities) do
+      NaiveDateTime.to_iso8601(updated_at)
+    end
+  end
+
   def most_recent_update(activities, user) do
     (List.first(activities) || user).updated_at
     |> NaiveDateTime.to_iso8601()