diff options
author | lain <lain@soykaf.club> | 2018-11-18 18:52:21 +0100 |
---|---|---|
committer | lain <lain@soykaf.club> | 2018-11-18 18:52:21 +0100 |
commit | d5af41b577c773ab6c3918d395ff4973a017a797 (patch) | |
tree | 2e3971778197f2937fabac342316a945b8e9d5df /lib | |
parent | 6f90ceb2eda68c5541a584d46868de748077c85d (diff) | |
download | pleroma-d5af41b577c773ab6c3918d395ff4973a017a797.tar.gz |
Fix note count update.
Diffstat (limited to 'lib')
-rw-r--r-- | lib/pleroma/user.ex | 8 | ||||
-rw-r--r-- | lib/pleroma/user/info.ex | 4 |
2 files changed, 9 insertions, 3 deletions
diff --git a/lib/pleroma/user.ex b/lib/pleroma/user.ex index 64b6c0aa1..b3d0712d4 100644 --- a/lib/pleroma/user.ex +++ b/lib/pleroma/user.ex @@ -440,11 +440,13 @@ defmodule Pleroma.User do note_count = Repo.one(note_count_query) - new_info = Map.put(user.info, "note_count", note_count) + info_cng = User.Info.set_note_count(user.info, note_count) - cs = info_changeset(user, %{info: new_info}) + cng = + change(user) + |> put_embed(:info, info_cng) - update_and_set_cache(cs) + update_and_set_cache(cng) end def update_follower_count(%User{} = user) do diff --git a/lib/pleroma/user/info.ex b/lib/pleroma/user/info.ex index cae5562f0..619e58b16 100644 --- a/lib/pleroma/user/info.ex +++ b/lib/pleroma/user/info.ex @@ -27,6 +27,10 @@ defmodule Pleroma.User.Info do end def add_to_note_count(info, number) do + set_note_count(info, info.note_count + number) + end + + def set_note_count(info, number) do params = %{note_count: Enum.max([0, number])} info |