Sessions Route + Password Auth (#649)

* Sessions Route + Password Auth

* run prep + fix clippy

* changing passwords + logging in

* register login
This commit is contained in:
Geometrically
2023-07-08 14:29:17 -07:00
committed by GitHub
parent ef9c90a43a
commit 6c0ad7fe1a
39 changed files with 1777 additions and 1206 deletions

View File

@@ -11,7 +11,7 @@ pub struct SessionId(pub u64);
#[derive(Serialize, Deserialize, Clone)]
pub struct Session {
pub id: SessionId,
pub session: String,
pub session: Option<String>,
pub user_id: UserId,
pub created: DateTime<Utc>,
@@ -27,3 +27,30 @@ pub struct Session {
pub country: Option<String>,
pub ip: String,
}
impl Session {
pub fn from(
data: crate::database::models::session_item::Session,
include_session: bool,
) -> Self {
Session {
id: data.id.into(),
session: if include_session {
Some(data.session)
} else {
None
},
user_id: data.user_id.into(),
created: data.created,
last_login: data.last_login,
expires: data.expires,
refresh_expires: data.refresh_expires,
os: data.os,
platform: data.platform,
user_agent: data.user_agent,
city: data.city,
country: data.country,
ip: data.ip,
}
}
}

View File

@@ -1,5 +1,4 @@
use super::ids::Base62Id;
use crate::database::models::team_item::QueryTeamMember;
use crate::models::users::User;
use rust_decimal::Decimal;
use serde::{Deserialize, Serialize};
@@ -70,8 +69,12 @@ pub struct TeamMember {
}
impl TeamMember {
pub fn from(data: QueryTeamMember, override_permissions: bool) -> Self {
let user: User = data.user.into();
pub fn from(
data: crate::database::models::team_item::TeamMember,
user: crate::database::models::User,
override_permissions: bool,
) -> Self {
let user: User = user.into();
Self {
team_id: data.team_id.into(),

View File

@@ -62,7 +62,7 @@ pub struct UserPayoutData {
pub payout_address: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Eq, PartialEq)]
#[derive(Serialize, Deserialize, Clone, Eq, PartialEq, Debug)]
#[serde(rename_all = "snake_case")]
pub enum RecipientType {
Email,
@@ -94,7 +94,7 @@ impl RecipientType {
}
}
#[derive(Serialize, Deserialize, Clone, Eq, PartialEq)]
#[derive(Serialize, Deserialize, Clone, Eq, PartialEq, Debug)]
#[serde(rename_all = "snake_case")]
pub enum RecipientWallet {
Venmo,