diff --git a/server/src/auth.rs b/server/src/auth.rs index 7739094..ce13dba 100644 --- a/server/src/auth.rs +++ b/server/src/auth.rs @@ -56,7 +56,7 @@ impl<'r> Responder<'r> for AuthErr { } -pub fn join(conn: DBConn, params: Form, hashcode: u64) -> AuthResult, AuthErr>{ +pub fn join(conn: DBConn, hashcode: u64, name: String) -> AuthResult, AuthErr>{ /* * Requires -> body * Requires -> body @@ -68,13 +68,13 @@ pub fn join(conn: DBConn, params: Form, hashcode: u64) -> AuthResult const negate: &'static str = "Malformed request"; let diesel_result: Result = invites - .filter(invites::dsl::id.eq(params.code)) + .filter(invites::dsl::id.eq(hashcode)) .first(&conn.0); if let Ok(data) = diesel_result { match data.uses { 1 ..= std::i32::MAX => { - let new_user = crate::users::create_new_user(conn, params.name); + let new_user = crate::users::create_new_user(conn, name); // update the uses counter let _ignored = diesel::update(invites.filter(invites::dsl::id.eq(hashcode))) .set(uses.eq(data.uses - 1)) diff --git a/server/src/invites.rs b/server/src/invites.rs index 819568d..ad53d8c 100644 --- a/server/src/invites.rs +++ b/server/src/invites.rs @@ -1,11 +1,10 @@ // Module handles creating invites for potentially new users use diesel::{self, prelude::*}; use rocket_contrib::json::Json; -use rocket::request::Form; use chrono::{Duration, Utc}; use rand::random; -use crate::auth::{join, JoinParams, AuthResult, AuthErr}; +use crate::auth::{join, AuthResult, AuthErr}; use crate::DBConn; use crate::models::{User, Invite}; use crate::schema; @@ -45,11 +44,11 @@ pub fn generate_invite(conn: DBConn) -> Json { } } -// TODO: `params` is non-payload-supporting somehow -// NOTE: unted functions all the way down here -#[get("/", data = "")] -pub fn use_invite(hash: u64, params: Form, conn: DBConn) -> AuthResult, AuthErr>{ - join(conn, params, hash) +// GET doesn't really like having data in its body for whatever reason +// Problem: invite/joining system is gonna have to get a redesign +#[get("/join//")] +pub fn use_invite(hash: u64, name: String, conn: DBConn) -> AuthResult, AuthErr>{ + join(conn, hash, name) } #[cfg(test)]