diff --git a/src/main.rs b/src/main.rs index 901daf0..5637725 100644 --- a/src/main.rs +++ b/src/main.rs @@ -39,8 +39,42 @@ struct TagForm { } #[post("/register", data = "")] -fn handle_register(tag: Form) -> Template { +async fn handle_register(mut db: Connection, tag: Form) -> Template { println!("register: {:?}", tag); + let pronouns = format!( + "{}/{}/{}", + tag.pronoun_subject, tag.pronoun_object, tag.pronoun_possessive + ); + sqlx::query!( + r#" + insert into doll_profiles + (id, + name, pronouns, handler_name, handler_url, + kind, breed, behaviour, + description, chassis_type, chassis_id, chassis_color, microchipped + ) + values + (?, + ?, ?, ?, ?, + ?, ?, ?, + ?, ?, ?, ?, ?)"#, + tag.ident, + tag.name, + pronouns, + tag.handler_name, + tag.handler_link, + tag.kind, + tag.breed, + tag.behaviour, + "", + "", + "", + "", + 1 + ) + .execute(&mut **db) + .await + .expect("fuck"); Template::render("register", context! {}) } @@ -51,14 +85,17 @@ async fn show_profile(mut db: Connection, ident: &str) -> Template { pub id: i64, pub created_at: chrono::NaiveDateTime, } - sqlx::query_as!( + let profile = sqlx::query_as!( Tag, - r#"select id, created_at as "created_at!: chrono::NaiveDateTime" from doll_profiles"# + r#"select id, created_at as "created_at!: chrono::NaiveDateTime" from doll_profiles where id = ?"#, + 423158 ) .fetch_one(&mut **db) .await .expect("fuck"); + println!("{:?}", profile); + Template::render( "show_profile", context! {