logo

pleroma

My custom branche(s) on git.pleroma.social/pleroma/pleroma
commit: 0e26ef2ab9061f51589fdb5149dee457203305e5
parent: ae94fcc95f4ac105ed8c2b87dc36fbeea066866d
Author: lain <lain@soykaf.club>
Date:   Thu, 25 Jun 2020 06:50:44 +0000

Merge branch 'fix/following-request-from-deactivated' into 'develop'

Filter outstanding follower requests from deactivated accounts

Closes #1771

See merge request pleroma/pleroma!2682

Diffstat:

Mlib/pleroma/following_relationship.ex1+
Mtest/user_test.exs10++++++++++
2 files changed, 11 insertions(+), 0 deletions(-)

diff --git a/lib/pleroma/following_relationship.ex b/lib/pleroma/following_relationship.ex @@ -124,6 +124,7 @@ defmodule Pleroma.FollowingRelationship do |> join(:inner, [r], f in assoc(r, :follower)) |> where([r], r.state == ^:follow_pending) |> where([r], r.following_id == ^id) + |> where([r, f], f.deactivated != true) |> select([r, f], f) |> Repo.all() end diff --git a/test/user_test.exs b/test/user_test.exs @@ -199,6 +199,16 @@ defmodule Pleroma.UserTest do assert [^pending_follower] = User.get_follow_requests(locked) end + test "doesn't return follow requests for deactivated accounts" do + locked = insert(:user, locked: true) + pending_follower = insert(:user, %{deactivated: true}) + + CommonAPI.follow(pending_follower, locked) + + assert true == pending_follower.deactivated + assert [] = User.get_follow_requests(locked) + end + test "clears follow requests when requester is blocked" do followed = insert(:user, locked: true) follower = insert(:user)