finish postgres
This commit is contained in:
parent
7b7e1a4014
commit
08e24f63f4
16 changed files with 454 additions and 306 deletions
|
@ -1,9 +1,7 @@
|
|||
use crate::get_pg;
|
||||
use crate::library::user::Session;
|
||||
use crate::library::user::User;
|
||||
use mongod::vec_to_api;
|
||||
use mongod::Model;
|
||||
use mongod::ToAPI;
|
||||
use mongodb::bson::doc;
|
||||
use crate::route::vec_to_api;
|
||||
use rocket::get;
|
||||
use rocket::http::Status;
|
||||
use rocket::outcome::Outcome;
|
||||
|
@ -33,8 +31,7 @@ impl<'r> FromRequest<'r> for User {
|
|||
async fn from_request(request: &'r Request<'_>) -> rocket::request::Outcome<Self, Self::Error> {
|
||||
match request.headers().get_one("token") {
|
||||
Some(key) => {
|
||||
if let Some(session) = Session::find_one(doc! { "token": key}).await {
|
||||
let user = session.user.get().await;
|
||||
if let Some(user) = sqlx::query_as("SELECT * FROM user WHERE id = (SELECT user FROM user_session WHERE token = $1)").bind(key).fetch_optional(get_pg!()).await.unwrap() {
|
||||
Outcome::Success(user)
|
||||
} else {
|
||||
Outcome::Error((Status::Unauthorized, ()))
|
||||
|
@ -84,7 +81,7 @@ pub async fn passwd_route(passwd: Json<PasswdData>, u: User) -> FallibleApiRespo
|
|||
pub async fn users_route(u: User) -> FallibleApiResponse {
|
||||
check_admin!(u);
|
||||
|
||||
let users: Vec<_> = vec_to_api(&User::find_all().await.unwrap()).await;
|
||||
let users: Vec<_> = vec_to_api(&User::find_all().await).await;
|
||||
|
||||
Ok(json!({"users": users}))
|
||||
}
|
||||
|
@ -101,5 +98,5 @@ pub async fn user_create_route(user: Json<LoginData>, u: User) -> FallibleApiRes
|
|||
.await
|
||||
.unwrap();
|
||||
|
||||
Ok(json!({"created": new_user._id}))
|
||||
Ok(json!({"created": new_user.username}))
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue