Run clippy fixes
This commit is contained in:
parent
8b7d2ad3f7
commit
1e2247abe2
@ -24,13 +24,13 @@ pub async fn get_user_from_header(
|
|||||||
) -> Result<(Roles, User), AuthError> {
|
) -> Result<(Roles, User), AuthError> {
|
||||||
let bearer_value = headers.get(header::AUTHORIZATION);
|
let bearer_value = headers.get(header::AUTHORIZATION);
|
||||||
let bearer_value = bearer_value
|
let bearer_value = bearer_value
|
||||||
.ok_or_else(|| AuthError::InvalidToken)?
|
.ok_or(AuthError::InvalidToken)?
|
||||||
.to_str()
|
.to_str()
|
||||||
.map_err(|_| AuthError::InvalidToken)?;
|
.map_err(|_| AuthError::InvalidToken)?;
|
||||||
|
|
||||||
let token = get_token_from_bearer(bearer_value)?;
|
let token = get_token_from_bearer(bearer_value)?;
|
||||||
|
|
||||||
let session = match Session::from_token(&pool, &token).await {
|
let session = match Session::from_token(pool, &token).await {
|
||||||
Ok(s) => s,
|
Ok(s) => s,
|
||||||
Err(_) => return Err(AuthError::InvalidToken),
|
Err(_) => return Err(AuthError::InvalidToken),
|
||||||
};
|
};
|
||||||
@ -39,12 +39,12 @@ pub async fn get_user_from_header(
|
|||||||
return Err(AuthError::InvalidToken);
|
return Err(AuthError::InvalidToken);
|
||||||
}
|
}
|
||||||
|
|
||||||
let db_user = match crate::database::model::User::get(&pool, session.user_id).await {
|
let db_user = match crate::database::model::User::get(pool, session.user_id).await {
|
||||||
Ok(u) => u,
|
Ok(u) => u,
|
||||||
Err(_) => return Err(AuthError::InvalidToken),
|
Err(_) => return Err(AuthError::InvalidToken),
|
||||||
};
|
};
|
||||||
|
|
||||||
let roles = UserMember::get_roles(&pool, &db_user.user_id)
|
let roles = UserMember::get_roles(pool, &db_user.user_id)
|
||||||
.await
|
.await
|
||||||
.unwrap_or(Roles::MEMBER);
|
.unwrap_or(Roles::MEMBER);
|
||||||
|
|
||||||
@ -54,7 +54,7 @@ pub async fn get_user_from_header(
|
|||||||
pub fn get_token_from_bearer(bearer: &str) -> Result<String, AuthError> {
|
pub fn get_token_from_bearer(bearer: &str) -> Result<String, AuthError> {
|
||||||
match bearer.strip_prefix("Bearer ") {
|
match bearer.strip_prefix("Bearer ") {
|
||||||
Some(token) => Ok(token.to_string()),
|
Some(token) => Ok(token.to_string()),
|
||||||
None => return Err(AuthError::InvalidToken),
|
None => Err(AuthError::InvalidToken),
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -76,7 +76,7 @@ pub async fn generate_password_hash(
|
|||||||
.await
|
.await
|
||||||
.unwrap();
|
.unwrap();
|
||||||
|
|
||||||
Ok(password_hash?)
|
password_hash
|
||||||
}
|
}
|
||||||
|
|
||||||
pub async fn verify_password_hash(
|
pub async fn verify_password_hash(
|
||||||
@ -90,11 +90,11 @@ pub async fn verify_password_hash(
|
|||||||
}
|
}
|
||||||
|
|
||||||
pub fn generate_session_token() -> String {
|
pub fn generate_session_token() -> String {
|
||||||
let session = ChaCha20Rng::from_os_rng()
|
|
||||||
|
|
||||||
|
ChaCha20Rng::from_os_rng()
|
||||||
.sample_iter(&Alphanumeric)
|
.sample_iter(&Alphanumeric)
|
||||||
.take(60)
|
.take(60)
|
||||||
.map(char::from)
|
.map(char::from)
|
||||||
.collect::<String>();
|
.collect::<String>()
|
||||||
|
|
||||||
session
|
|
||||||
}
|
}
|
||||||
|
@ -12,11 +12,11 @@ pub enum AuthError {
|
|||||||
impl Display for AuthError {
|
impl Display for AuthError {
|
||||||
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
|
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
|
||||||
match self {
|
match self {
|
||||||
Self::NoPermssions => write!(f, "{}", "No permissions"),
|
Self::NoPermssions => write!(f, "No permissions"),
|
||||||
Self::InvalidToken => write!(f, "{}", "Invalid token"),
|
Self::InvalidToken => write!(f, "Invalid token"),
|
||||||
Self::Unexpected => write!(f, "{}", "Unexpected error"),
|
Self::Unexpected => write!(f, "Unexpected error"),
|
||||||
Self::InvalidPassword => write!(f, "{}", "Password is incorrect"),
|
Self::InvalidPassword => write!(f, "Password is incorrect"),
|
||||||
Self::Unauthorized => write!(f, "{}", "Authentication is required"),
|
Self::Unauthorized => write!(f, "Authentication is required"),
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -48,7 +48,7 @@ impl Member {
|
|||||||
transaction: &mut sqlx::Transaction<'_, Postgres>,
|
transaction: &mut sqlx::Transaction<'_, Postgres>,
|
||||||
members: Vec<Self>,
|
members: Vec<Self>,
|
||||||
) -> Result<(), sqlx::Error> {
|
) -> Result<(), sqlx::Error> {
|
||||||
if members.len() == 0 {
|
if members.is_empty() {
|
||||||
return Ok(());
|
return Ok(());
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -78,7 +78,7 @@ impl Member {
|
|||||||
transaction: &mut sqlx::Transaction<'_, Postgres>,
|
transaction: &mut sqlx::Transaction<'_, Postgres>,
|
||||||
members: Vec<Self>,
|
members: Vec<Self>,
|
||||||
) -> Result<(), sqlx::Error> {
|
) -> Result<(), sqlx::Error> {
|
||||||
if members.len() == 0 {
|
if members.is_empty() {
|
||||||
return Ok(());
|
return Ok(());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -19,13 +19,13 @@ impl Session {
|
|||||||
let created_at = Utc::now();
|
let created_at = Utc::now();
|
||||||
let expires_at = Utc::now() + Duration::days(7);
|
let expires_at = Utc::now() + Duration::days(7);
|
||||||
|
|
||||||
return Self {
|
Self {
|
||||||
session_id,
|
session_id,
|
||||||
user_id,
|
user_id,
|
||||||
token,
|
token,
|
||||||
expires_at,
|
expires_at,
|
||||||
created_at,
|
created_at,
|
||||||
};
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,4 +1,3 @@
|
|||||||
use axum::debug_handler;
|
|
||||||
use axum::http::HeaderMap;
|
use axum::http::HeaderMap;
|
||||||
use axum::{extract::State, routing::post, Json, Router};
|
use axum::{extract::State, routing::post, Json, Router};
|
||||||
use serde::Deserialize;
|
use serde::Deserialize;
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
use std::collections::HashMap;
|
use std::collections::HashMap;
|
||||||
|
|
||||||
use axum::{
|
use axum::{
|
||||||
extract::{FromRef, State},
|
extract::State,
|
||||||
http::HeaderMap,
|
http::HeaderMap,
|
||||||
Json,
|
Json,
|
||||||
};
|
};
|
||||||
@ -137,19 +137,12 @@ pub struct MigrationResponse {
|
|||||||
remove: Vec<(String, Name)>,
|
remove: Vec<(String, Name)>,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[derive(Default)]
|
||||||
pub struct MigrationStore {
|
pub struct MigrationStore {
|
||||||
pub store: HashMap<u32, MembersDiff>,
|
pub store: HashMap<u32, MembersDiff>,
|
||||||
pub count: u32,
|
pub count: u32,
|
||||||
}
|
}
|
||||||
|
|
||||||
impl Default for MigrationStore {
|
|
||||||
fn default() -> Self {
|
|
||||||
Self {
|
|
||||||
count: 0,
|
|
||||||
store: HashMap::new(),
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
impl Row {
|
impl Row {
|
||||||
fn from_csv_many(input: &str) -> Result<Vec<Self>, csv::Error> {
|
fn from_csv_many(input: &str) -> Result<Vec<Self>, csv::Error> {
|
||||||
@ -181,25 +174,25 @@ impl Row {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
impl Into<Name> for Row {
|
impl From<Row> for Name {
|
||||||
fn into(self) -> Name {
|
fn from(val: Row) -> Self {
|
||||||
Name {
|
Name {
|
||||||
first: self.first_name,
|
first: val.first_name,
|
||||||
full: "Temporarely full name".to_string(),
|
full: "Temporarely full name".to_string(),
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
impl Into<Member> for Row {
|
impl From<Row> for Member {
|
||||||
fn into(self) -> Member {
|
fn from(val: Row) -> Self {
|
||||||
let name: Name = self.clone().into();
|
let name: Name = val.clone().into();
|
||||||
|
|
||||||
Member {
|
Member {
|
||||||
id: self.id.clone(),
|
id: val.id.clone(),
|
||||||
name,
|
name,
|
||||||
registration_token: None,
|
registration_token: None,
|
||||||
diploma: self.diploma.clone(),
|
diploma: val.diploma.clone(),
|
||||||
groups: self.groups_parsed(),
|
groups: val.groups_parsed(),
|
||||||
roles: Roles::MEMBER,
|
roles: Roles::MEMBER,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user