diff options
Diffstat (limited to 'lib/pleroma/user.ex')
-rw-r--r-- | lib/pleroma/user.ex | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/lib/pleroma/user.ex b/lib/pleroma/user.ex index 29fd1de8b..a10b43b78 100644 --- a/lib/pleroma/user.ex +++ b/lib/pleroma/user.ex @@ -43,4 +43,14 @@ defmodule Pleroma.User do |> follow_changeset(%{following: following}) |> Repo.update end + + def unfollow(%User{} = follower, %User{} = followed) do + ap_followers = User.ap_followers(followed) + following = follower.following + |> List.delete(ap_followers) + + follower + |> follow_changeset(%{following: following}) + |> Repo.update + end end |