diff options
author | lambda <pleromagit@rogerbraun.net> | 2018-11-09 16:00:24 +0000 |
---|---|---|
committer | lambda <pleromagit@rogerbraun.net> | 2018-11-09 16:00:24 +0000 |
commit | b4bd5e40e491c8b777c75ec4f096c0c466a6b4e2 (patch) | |
tree | 6ac868c99eccc9299e8601e104c458c7775bee26 /lib/pleroma/user.ex | |
parent | a44d87f0594ad10809afe269e20e8d4c777b5d5c (diff) | |
parent | e4971553c74436b7060f410fe6cbd4f7a9c13b80 (diff) | |
download | pleroma-b4bd5e40e491c8b777c75ec4f096c0c466a6b4e2.tar.gz |
Merge branch 'bugfix/no-cc-mentions' into 'develop'
align to/cc addressing pattern with friendica, hubzilla instead of mastodon
Closes #341
See merge request pleroma/pleroma!436
Diffstat (limited to 'lib/pleroma/user.ex')
-rw-r--r-- | lib/pleroma/user.ex | 33 |
1 files changed, 11 insertions, 22 deletions
diff --git a/lib/pleroma/user.ex b/lib/pleroma/user.ex index b2f59ab6b..be634a8e1 100644 --- a/lib/pleroma/user.ex +++ b/lib/pleroma/user.ex @@ -464,36 +464,25 @@ defmodule Pleroma.User do update_and_set_cache(cs) end - def get_notified_from_activity_query(to) do + def get_users_from_set_query(ap_ids, false) do from( u in User, - where: u.ap_id in ^to, - where: u.local == true + where: u.ap_id in ^ap_ids ) end - def get_notified_from_activity(%Activity{recipients: to, data: %{"type" => "Announce"} = data}) do - object = Object.normalize(data["object"]) - actor = User.get_cached_by_ap_id(data["actor"]) - - # ensure that the actor who published the announced object appears only once - to = - if actor.nickname != nil do - to ++ [object.data["actor"]] - else - to - end - |> Enum.uniq() - - query = get_notified_from_activity_query(to) + def get_users_from_set_query(ap_ids, true) do + query = get_users_from_set_query(ap_ids, false) - Repo.all(query) + from( + u in query, + where: u.local == true + ) end - def get_notified_from_activity(%Activity{recipients: to}) do - query = get_notified_from_activity_query(to) - - Repo.all(query) + def get_users_from_set(ap_ids, local_only \\ true) do + get_users_from_set_query(ap_ids, local_only) + |> Repo.all() end def get_recipients_from_activity(%Activity{recipients: to}) do |