When banning from local communities, make sure they aren't deleted or removed. (#4784)
- This is causing some federation issues. - Context: #4782
This commit is contained in:
parent
bb94fb1c79
commit
e8cfb5665f
1 changed files with 10 additions and 1 deletions
|
@ -12,7 +12,14 @@ use crate::{
|
||||||
traits::{ApubActor, Crud, Followable},
|
traits::{ApubActor, Crud, Followable},
|
||||||
utils::{functions::lower, get_conn, naive_now, DbPool},
|
utils::{functions::lower, get_conn, naive_now, DbPool},
|
||||||
};
|
};
|
||||||
use diesel::{dsl::insert_into, result::Error, CombineDsl, ExpressionMethods, JoinOnDsl, QueryDsl};
|
use diesel::{
|
||||||
|
dsl::{insert_into, not},
|
||||||
|
result::Error,
|
||||||
|
CombineDsl,
|
||||||
|
ExpressionMethods,
|
||||||
|
JoinOnDsl,
|
||||||
|
QueryDsl,
|
||||||
|
};
|
||||||
use diesel_async::RunQueryDsl;
|
use diesel_async::RunQueryDsl;
|
||||||
|
|
||||||
#[async_trait]
|
#[async_trait]
|
||||||
|
@ -100,6 +107,8 @@ impl Person {
|
||||||
.inner_join(post::table)
|
.inner_join(post::table)
|
||||||
.inner_join(community::table.on(post::community_id.eq(community::id)))
|
.inner_join(community::table.on(post::community_id.eq(community::id)))
|
||||||
.filter(community::local.eq(true))
|
.filter(community::local.eq(true))
|
||||||
|
.filter(not(community::deleted))
|
||||||
|
.filter(not(community::removed))
|
||||||
.filter(comment::creator_id.eq(for_creator_id))
|
.filter(comment::creator_id.eq(for_creator_id))
|
||||||
.select(community::id)
|
.select(community::id)
|
||||||
.union(
|
.union(
|
||||||
|
|
Loading…
Reference in a new issue