use crate::{database::Database, routes::auth::hash_password}; pub fn register_admin(database: &Database, email: &str, username: &str, password: &str) -> Result<(), ()> { match database.fetch_user_by_email(email) { Err(_) | Ok(Some(_)) => return Err(()), Ok(None) => {}, }; match database.fetch_user_by_username(username) { Err(_) | Ok(Some(_)) => return Err(()), Ok(None) => {}, }; let Ok(password_hash) = hash_password(password) else { return Err(()) }; match database.insert_user(email, username, &password_hash, true) { Ok(_) => Ok(()), Err(e) => { eprintln!("{:?}", e); return Err(()); } } }