From 6fa273b9f5997c0134f44f4263a8edadc035470b Mon Sep 17 00:00:00 2001 From: trisua Date: Mon, 19 May 2025 19:38:10 -0400 Subject: [PATCH] add: allow commas in names https://tetratto.com/post/182999539626541056 --- crates/core/src/database/auth.rs | 3 ++- crates/core/src/database/common.rs | 2 ++ crates/core/src/database/communities.rs | 3 ++- 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/crates/core/src/database/auth.rs b/crates/core/src/database/auth.rs index ee169d6..530a57b 100644 --- a/crates/core/src/database/auth.rs +++ b/crates/core/src/database/auth.rs @@ -1,3 +1,4 @@ +use super::common::NAME_REGEX; use super::*; use crate::cache::Cache; use crate::model::auth::UserConnections; @@ -128,7 +129,7 @@ impl DataManager { return Err(Error::MiscError("This username cannot be used".to_string())); } - let regex = regex::RegexBuilder::new(r"[^\w_\-\.!]+") + let regex = regex::RegexBuilder::new(NAME_REGEX) .multi_line(true) .build() .unwrap(); diff --git a/crates/core/src/database/common.rs b/crates/core/src/database/common.rs index 397cf00..1607ff7 100644 --- a/crates/core/src/database/common.rs +++ b/crates/core/src/database/common.rs @@ -6,6 +6,8 @@ use crate::{ }; use super::DataManager; +pub const NAME_REGEX: &str = r"[^\w_\-\.,!]+"; + impl DataManager { pub async fn init(&self) -> Result<()> { let conn = match self.connect().await { diff --git a/crates/core/src/database/communities.rs b/crates/core/src/database/communities.rs index a7e8754..c682275 100644 --- a/crates/core/src/database/communities.rs +++ b/crates/core/src/database/communities.rs @@ -1,3 +1,4 @@ +use super::common::NAME_REGEX; use super::*; use crate::cache::Cache; use crate::model::communities::{CommunityContext, CommunityJoinAccess, CommunityMembership}; @@ -398,7 +399,7 @@ impl DataManager { return Err(Error::MiscError("This title cannot be used".to_string())); } - let regex = regex::RegexBuilder::new(r"[^\w_\-\.!]+") + let regex = regex::RegexBuilder::new(NAME_REGEX) .multi_line(true) .build() .unwrap();