diff options
author | Tyler Murphy <tylermurphy534@gmail.com> | 2023-01-28 14:22:29 -0500 |
---|---|---|
committer | Tyler Murphy <tylermurphy534@gmail.com> | 2023-01-28 14:22:29 -0500 |
commit | 7e07687b5ec14bd788b8d2dd3f0a7ead83842fd4 (patch) | |
tree | 795df5d4e91e44e50214437dc0c77f25db66b870 /src/database/users.rs | |
parent | docker (diff) | |
download | xssbook-7e07687b5ec14bd788b8d2dd3f0a7ead83842fd4.tar.gz xssbook-7e07687b5ec14bd788b8d2dd3f0a7ead83842fd4.tar.bz2 xssbook-7e07687b5ec14bd788b8d2dd3f0a7ead83842fd4.zip |
clippy my beloved
Diffstat (limited to 'src/database/users.rs')
-rw-r--r-- | src/database/users.rs | 29 |
1 files changed, 22 insertions, 7 deletions
diff --git a/src/database/users.rs b/src/database/users.rs index 56b8814..d9e35b1 100644 --- a/src/database/users.rs +++ b/src/database/users.rs @@ -2,7 +2,7 @@ use std::time::{SystemTime, UNIX_EPOCH}; use rusqlite::{OptionalExtension, Row}; use tracing::instrument; -use crate::{database, types::user::User}; +use crate::{database, types::user::User, api::auth::RegistrationRequet}; pub fn init() -> Result<(), rusqlite::Error> { let sql = " @@ -46,7 +46,10 @@ pub fn get_user_by_id(user_id: u64, hide_password: bool) -> Result<Option<User>, tracing::trace!("Retrieving user by id"); let conn = database::connect()?; let mut stmt = conn.prepare("SELECT * FROM users WHERE user_id = ?")?; - let row = stmt.query_row([user_id], |row| Ok(user_from_row(row, hide_password)?)).optional()?; + let row = stmt.query_row([user_id], |row| { + let row = user_from_row(row, hide_password)?; + Ok(row) + }).optional()?; Ok(row) } @@ -55,7 +58,10 @@ pub fn get_user_by_email(email: &str, hide_password: bool) -> Result<Option<User tracing::trace!("Retrieving user by email"); let conn = database::connect()?; let mut stmt = conn.prepare("SELECT * FROM users WHERE email = ?")?; - let row = stmt.query_row([email], |row| Ok(user_from_row(row, hide_password)?)).optional()?; + let row = stmt.query_row([email], |row| { + let row = user_from_row(row, hide_password)?; + Ok(row) + }).optional()?; Ok(row) } @@ -64,7 +70,10 @@ pub fn get_user_by_password(password: &str, hide_password: bool) -> Result<Optio tracing::trace!("Retrieving user by password"); let conn = database::connect()?; let mut stmt = conn.prepare("SELECT * FROM users WHERE password = ?")?; - let row = stmt.query_row([password], |row| Ok(user_from_row(row, hide_password)?)).optional()?; + let row = stmt.query_row([password], |row| { + let row = user_from_row(row, hide_password)?; + Ok(row) + }).optional()?; Ok(row) } @@ -74,17 +83,23 @@ pub fn get_user_page(page: u64, hide_password: bool) -> Result<Vec<User>, rusqli let page_size = 5; let conn = database::connect()?; let mut stmt = conn.prepare("SELECT * FROM users ORDER BY user_id DESC LIMIT ? OFFSET ?")?; - let row = stmt.query_map([page_size, page_size * page], |row| Ok(user_from_row(row, hide_password)?))?; + let row = stmt.query_map([page_size, page_size * page], |row| { + let row = user_from_row(row, hide_password)?; + Ok(row) + })?; Ok(row.into_iter().flatten().collect()) } #[instrument()] -pub fn add_user(firstname: &str, lastname: &str, email: &str, password: &str, gender: &str, day: u8, month: u8, year: u32) -> Result<User, rusqlite::Error> { +pub fn add_user(request: RegistrationRequet) -> Result<User, rusqlite::Error> { tracing::trace!("Adding new user"); let date = SystemTime::now().duration_since(UNIX_EPOCH).unwrap().as_millis() as u64; let conn = database::connect()?; let mut stmt = conn.prepare("INSERT INTO users (firstname, lastname, email, password, gender, date, day, month, year) VALUES(?,?,?,?,?,?,?,?,?) RETURNING *;")?; - let user = stmt.query_row((firstname, lastname, email, password, gender, date, day, month, year), |row| Ok(user_from_row(row, false)?))?; + let user = stmt.query_row((request.firstname, request.lastname, request.email, request.password, request.gender, date, request.day, request.month, request.year), |row| { + let row = user_from_row(row, false)?; + Ok(row) + })?; Ok(user) }
\ No newline at end of file |