diff --git a/src/routes/onboard/complete.rs b/src/routes/onboard/complete.rs index 45f30d7d6d7f67937dc7d3808a2ca18c1dc154cf..a35e1b1d402ced0a2ea3329965ac15d5c6c2b9db 100644 --- a/src/routes/onboard/complete.rs +++ b/src/routes/onboard/complete.rs @@ -10,7 +10,7 @@ use serde::{Deserialize, Serialize}; use validator::Validate; lazy_static! { - static ref RE_USERNAME: Regex = Regex::new(r"^[a-zA-Z0-9_]+$").unwrap(); + static ref RE_USERNAME: Regex = Regex::new(r"^[a-zA-Z0-9_.]+$").unwrap(); } #[derive(Validate, Serialize, Deserialize)] diff --git a/src/routes/users/find_mutual.rs b/src/routes/users/find_mutual.rs index 1d52e59353cbf1e74c4b534e3300d8db3e05b8d1..7b3f1f640a11c91e70c70366de98070eff2d0f89 100644 --- a/src/routes/users/find_mutual.rs +++ b/src/routes/users/find_mutual.rs @@ -8,15 +8,12 @@ use rocket_contrib::json::JsonValue; #[get("/<target>/mutual")] pub async fn req(user: User, target: Ref) -> Result<JsonValue> { - let channels = get_collection("channels") + let users = get_collection("users") .find( doc! { - "$or": [ - { "type": "Group" }, - ], "$and": [ - { "recipients": &user.id }, - { "recipients": &target.id } + { "relations.id": &user.id }, + { "relations.id": &target.id } ] }, FindOptions::builder().projection(doc! { "_id": 1 }).build(), @@ -24,7 +21,7 @@ pub async fn req(user: User, target: Ref) -> Result<JsonValue> { .await .map_err(|_| Error::DatabaseError { operation: "find", - with: "channels", + with: "users", })? .filter_map(async move |s| s.ok()) .collect::<Vec<Document>>() @@ -33,5 +30,5 @@ pub async fn req(user: User, target: Ref) -> Result<JsonValue> { .filter_map(|x| x.get_str("_id").ok().map(|x| x.to_string())) .collect::<Vec<String>>(); - Ok(json!({ "channels": channels })) + Ok(json!({ "users": users })) }