diff --git a/src/auth.rs b/src/auth.rs index 226a5bb..50f055f 100644 --- a/src/auth.rs +++ b/src/auth.rs @@ -5,13 +5,12 @@ use crate::user::*; use rocket_contrib::json::{Json, JsonValue}; use random_string::generate; extern crate sha1; -use serde::Deserialize; // Post request to register a user and pin #[post("/register", format = "json", data = "")] pub fn register(data: Json) -> JsonValue { // check if the user exists - if let Some(user) = db_read_user(&data.name).ok().flatten() { + if let Some(_user) = db_read_user(&data.name).ok().flatten() { warn!("Cannot create user {}! User is already in system.", data.name); return json!({ "status": "fail", @@ -196,9 +195,6 @@ pub fn login(data: Json, mut cookies: Cookies) -> JsonValue { // Change info about a user #[post("/change", format = "json", data = "")] pub fn change_info(input: Json, mut cookies: Cookies) -> JsonValue { - // read in the users & hash the pin - let mut users: Vec = db_read(); - // get token from cookie let token = match cookies.get_private("token") { None => { @@ -270,33 +266,24 @@ pub fn change_info(input: Json, mut cookies: Cookies) -> JsonValue "reason": "user doesn't exist", }); } - return json!({ - "status": "fail", - "reason": "idk", - }); } #[get("/users/")] pub fn get_user(name: String) -> JsonValue { - let users: Vec = db_read(); - let found_user = users - .iter() - .filter(|u| u.name == name.to_lowercase()) - .next(); - - match found_user { - Some(user) => json!({ + if let Some(user) = db_read_user(&name.to_lowercase()).ok().flatten() { + return json!({ "status":"ok", "user": { "name": user.name, "pronouns": user.pronouns, "role": user.role, }, - }), - None => json!({ + }); + } else { + return json!({ "status": "fail", "reason": format!("user {} not found", name), - }), + }); } } diff --git a/src/chat.rs b/src/chat.rs index 7912a65..f2977ec 100644 --- a/src/chat.rs +++ b/src/chat.rs @@ -22,7 +22,7 @@ pub fn fetch_messages() -> Json> { } // Create full message object and write to file -fn create_message(message: Json, file: &str, user: &User) -> JsonValue { +fn create_message(message: Json, user: &User) -> JsonValue { let event_type = match message.body.chars().nth(0).unwrap() { '/' => MessageType::Command, ':' => MessageType::Emote, @@ -64,7 +64,7 @@ fn check_token(token: Cookie, message: Json>) -> JsonValue { }); } else if i.session_token == token.value() { // if token matches info!("user exists and given token matches"); - return create_message(message, "messages.json", i); + return create_message(message, i); } else { warn!("token does not match!"); return json!({ diff --git a/src/message.rs b/src/message.rs index d7159ab..a2bad5e 100644 --- a/src/message.rs +++ b/src/message.rs @@ -1,4 +1,3 @@ -use crate::user::User; use chrono::prelude::*; use serde::{Deserialize, Serialize}; use uuid::Uuid;