diff --git a/src/api/v1/members/uuid/ban.rs b/src/api/v1/members/uuid/ban.rs index b79da23..5ba6702 100644 --- a/src/api/v1/members/uuid/ban.rs +++ b/src/api/v1/members/uuid/ban.rs @@ -35,10 +35,6 @@ pub async fn post( let member = Member::fetch_one_with_member(&app_state, None, member_uuid).await?; - if member.is_owner { - return Err(Error::Forbidden("Can not ban owner".to_string())); - } - let caller = Member::check_membership(&mut conn, uuid, member.guild_uuid).await?; caller .check_permission(&app_state, Permissions::BanMember) diff --git a/src/objects/member.rs b/src/objects/member.rs index d07b701..05ef7bc 100644 --- a/src/objects/member.rs +++ b/src/objects/member.rs @@ -208,6 +208,10 @@ impl Member { } pub async fn delete(self, conn: &mut Conn) -> Result<(), Error> { + if self.is_owner { + return Err(Error::Forbidden("Can not ban owner".to_string())); + } + delete(guild_members::table) .filter(guild_members::uuid.eq(self.uuid)) .execute(conn)