diff options
author | lain <lain@soykaf.club> | 2020-04-06 17:50:31 +0200 |
---|---|---|
committer | lain <lain@soykaf.club> | 2020-04-06 17:50:31 +0200 |
commit | 19335be24c25739e2334180af6c59dd8919d5fc8 (patch) | |
tree | db34531b2dd5befb495d4379aa8aaad9284fa72c /lib/pleroma/activity.ex | |
parent | fd97b0e634d30dec3217efcf3d67610d1b54bf8b (diff) | |
parent | 1d4ab06505ec5143dbb1d78d718fa9efd1497751 (diff) | |
download | pleroma-19335be24c25739e2334180af6c59dd8919d5fc8.tar.gz |
Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into remake-remodel-dms
Diffstat (limited to 'lib/pleroma/activity.ex')
-rw-r--r-- | lib/pleroma/activity.ex | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/lib/pleroma/activity.ex b/lib/pleroma/activity.ex index 6ca05f74e..5a8329e69 100644 --- a/lib/pleroma/activity.ex +++ b/lib/pleroma/activity.ex @@ -95,6 +95,17 @@ defmodule Pleroma.Activity do |> preload([activity, object: object], object: object) end + # Note: applies to fake activities (ActivityPub.Utils.get_notified_from_object/1 etc.) + def user_actor(%Activity{actor: nil}), do: nil + + def user_actor(%Activity{} = activity) do + with %User{} <- activity.user_actor do + activity.user_actor + else + _ -> User.get_cached_by_ap_id(activity.actor) + end + end + def with_joined_user_actor(query, join_type \\ :inner) do join(query, join_type, [activity], u in User, on: u.ap_id == activity.actor, |