From 56bd7638200e58a11317b076c3ab5fd0bc76e7be Mon Sep 17 00:00:00 2001 From: Paul <paulmakles@gmail.com> Date: Thu, 1 Apr 2021 14:01:07 +0100 Subject: [PATCH] Prevent setting null in edit. Preflight for variables. --- src/routes/channels/edit_channel.rs | 11 ++++++++++- src/util/variables.rs | 7 +++++++ 2 files changed, 17 insertions(+), 1 deletion(-) diff --git a/src/routes/channels/edit_channel.rs b/src/routes/channels/edit_channel.rs index d51cbcd..ab2166d 100644 --- a/src/routes/channels/edit_channel.rs +++ b/src/routes/channels/edit_channel.rs @@ -37,9 +37,18 @@ pub async fn req(user: User, target: Ref, info: Json<Data>) -> Result<()> { match &target { Channel::Group { id, .. } => { let col = get_collection("channels"); + let mut set = doc! {}; + if let Some(name) = &info.name { + set.insert("name", name.clone()); + } + + if let Some(description) = &info.description { + set.insert("description", description.clone()); + } + col.update_one( doc! { "_id": &id }, - doc! { "$set": to_document(&info.0).map_err(|_| Error::DatabaseError { operation: "to_document", with: "info" })? }, + doc! { "$set": set }, None ) .await diff --git a/src/util/variables.rs b/src/util/variables.rs index 7ab4780..948b403 100644 --- a/src/util/variables.rs +++ b/src/util/variables.rs @@ -62,6 +62,13 @@ lazy_static! { } pub fn preflight_checks() { + format!("{}", *MONGO_URI); + format!("{}", *PUBLIC_URL); + format!("{}", *EXTERNAL_WS_URL); + + format!("{}", *VAPID_PRIVATE_KEY); + format!("{}", *VAPID_PUBLIC_KEY); + if *USE_EMAIL == false { #[cfg(not(debug_assertions))] if !env::var("REVOLT_UNSAFE_NO_EMAIL").map_or(false, |v| v == *"1") { -- GitLab