раскидал структуру для монорепозитория

This commit is contained in:
arrelin
2025-12-09 18:31:45 +03:00
parent 7e1e89424a
commit aadbc099b0
48 changed files with 4048 additions and 5 deletions

23
backend/src/middleware.rs Normal file
View File

@@ -0,0 +1,23 @@
use axum::{
extract::Request,
http::StatusCode,
middleware::Next,
response::Response,
};
use axum_login::AuthSession;
use crate::auth::AuthBackend;
pub async fn require_admin(
auth_session: AuthSession<AuthBackend>,
request: Request,
next: Next,
) -> Result<Response, StatusCode> {
let user = auth_session.user.ok_or(StatusCode::UNAUTHORIZED)?;
if !user.is_admin {
return Err(StatusCode::FORBIDDEN);
}
Ok(next.run(request).await)
}