From 2576ad22ce8166077f82c33cd1a6bfb2f37c9e97 Mon Sep 17 00:00:00 2001 From: Ethan O'Brien <77750390+ethanaobrien@users.noreply.github.com> Date: Sat, 30 Mar 2024 08:21:43 -0500 Subject: [PATCH] POST /api/user: Only set what was sent --- src/router/user.rs | 12 ++++++++++-- src/router/userdata/mod.rs | 1 - 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/src/router/user.rs b/src/router/user.rs index 6a9f324..645fe13 100644 --- a/src/router/user.rs +++ b/src/router/user.rs @@ -54,8 +54,16 @@ pub fn user_post(req: HttpRequest, body: String) -> HttpResponse { let mut user = userdata::get_acc(&key); let user_2 = userdata::get_acc_home(&key); - user["user"]["name"] = body["name"].clone(); - user["user"]["friend_request_disabled"] = body["friend_request_disabled"].clone(); + if !body["name"].is_null() { + user["user"]["name"] = body["name"].clone(); + } + if !body["friend_request_disabled"].is_null() { + user["user"]["friend_request_disabled"] = body["friend_request_disabled"].clone(); + } + if !body["profile_settings"].is_null() { + user["user"]["profile_settings"] = body["profile_settings"].clone(); + } + userdata::save_acc(&key, user.clone()); diff --git a/src/router/userdata/mod.rs b/src/router/userdata/mod.rs index bc5f1d8..8570800 100644 --- a/src/router/userdata/mod.rs +++ b/src/router/userdata/mod.rs @@ -2,7 +2,6 @@ use rusqlite::{Connection, params}; use std::sync::{Mutex, MutexGuard}; use lazy_static::lazy_static; use json::{JsonValue, array, object}; -use base64::{Engine as _, engine::general_purpose}; use crate::router::global; lazy_static! {