From 947eb15771ed6785b3dcd16c354c03ded5e4cbe0 Mon Sep 17 00:00:00 2001 From: izzy Date: Thu, 7 Aug 2025 12:29:42 +0200 Subject: [PATCH] fix: newly created roles should be ranked the lowest --- crates/core/models/src/v0/servers.rs | 2 ++ crates/delta/src/routes/servers/roles_create.rs | 14 ++------------ 2 files changed, 4 insertions(+), 12 deletions(-) diff --git a/crates/core/models/src/v0/servers.rs b/crates/core/models/src/v0/servers.rs index 4c7e1ee8..d29594bf 100644 --- a/crates/core/models/src/v0/servers.rs +++ b/crates/core/models/src/v0/servers.rs @@ -175,6 +175,8 @@ auto_derived!( /// Ranking position /// /// Smaller values take priority. + /// + /// **Removed** - no effect, use the edit server role positions route pub rank: Option, } diff --git a/crates/delta/src/routes/servers/roles_create.rs b/crates/delta/src/routes/servers/roles_create.rs index c7c67f09..fe82e578 100644 --- a/crates/delta/src/routes/servers/roles_create.rs +++ b/crates/delta/src/routes/servers/roles_create.rs @@ -40,20 +40,10 @@ pub async fn create( })); }; - let member_rank = query.get_member_rank(); - let rank = if let Some(given_rank) = data.rank { - if given_rank <= member_rank.unwrap_or(i64::MIN) { - return Err(create_error!(NotElevated)); - } - - given_rank - } else { - member_rank.unwrap_or(0).saturating_add(1) - }; - let role = Role { name: data.name, - rank, + // Rank of the new role should be below the lowest role + rank: server.roles.len() as i64, colour: None, hoist: false, permissions: Default::default(),