X-Git-Url: http://git.squeep.com/?a=blobdiff_plain;f=lib%2Fpleroma%2Fuser.ex;h=520dc98bd316b72b05e4f8ff6164ccb488210cd9;hb=494bb6bac64361860db194aed57618450a76177d;hp=fb1f2425438c0de4b5e7c38b652dca8e5187f2e4;hpb=ef2e2c5e1240c1e7eac677060e8ed4a6845815b5;p=akkoma diff --git a/lib/pleroma/user.ex b/lib/pleroma/user.ex index fb1f24254..520dc98bd 100644 --- a/lib/pleroma/user.ex +++ b/lib/pleroma/user.ex @@ -517,6 +517,11 @@ defmodule Pleroma.User do |> Repo.all() end + def get_all_by_ids(ids) do + from(u in __MODULE__, where: u.id in ^ids) + |> Repo.all() + end + # This is mostly an SPC migration fix. This guesses the user nickname by taking the last part # of the ap_id and the domain and tries to get that user def get_by_guessed_nickname(ap_id) do @@ -789,6 +794,19 @@ defmodule Pleroma.User do |> update_and_set_cache() end + def update_mascot(user, url) do + info_changeset = + User.Info.mascot_update( + user.info, + url + ) + + user + |> change() + |> put_embed(:info, info_changeset) + |> update_and_set_cache() + end + @spec maybe_fetch_follow_information(User.t()) :: User.t() def maybe_fetch_follow_information(user) do with {:ok, user} <- fetch_follow_information(user) do @@ -936,9 +954,7 @@ defmodule Pleroma.User do def unsubscribe(unsubscriber, %{ap_id: ap_id}) do with %User{} = user <- get_cached_by_ap_id(ap_id) do - info_cng = - user.info - |> User.Info.remove_from_subscribers(unsubscriber.ap_id) + info_cng = User.Info.remove_from_subscribers(user.info, unsubscriber.ap_id) change(user) |> put_embed(:info, info_cng)