poc api code for generating invites

This commit is contained in:
shockrah 2020-01-30 23:54:53 -08:00
parent ecc08cc3f1
commit 4309f9890e

View File

@ -1,19 +1,29 @@
// Module handles creating invites for potentially new users
use rand::random;
use chrono::{DateTime, Duration, Utc};
use chrono::{Duration, Utc};
#[derive(Debug)]
struct Invite {
hash: u64,
uses: i32,
expire: DateTime<Utc>,
expire: i64, // comes from a date time object ngl famalam
}
#[get("/generate")]
pub fn generate_invite() -> String {
format!("{:?}", Invite {
let dt = Utc::now() + Duration::minutes(30);
let invite = Invite {
hash: random::<u64>(),
uses: 1,
expire: Utc::now() + Duration::minutes(30),
})
expire: dt.timestamp(),
};
// Insert the new invite into our database
format!("freechat.io/invite/{}", invite.hash)
}
#[get("/<hash>")]
pub fn use_invite(hash: i64) -> String {
// check if the invite is somewhere in our invites table
format!("freechat.io/invite/{}", hash)
}