fix: allow bots to authenticate with new routes
This commit is contained in:
@@ -13,19 +13,19 @@ impl<'r> FromRequest<'r> for User {
|
|||||||
.local_cache_async(async {
|
.local_cache_async(async {
|
||||||
let db = request.rocket().state::<Database>().expect("`Database`");
|
let db = request.rocket().state::<Database>().expect("`Database`");
|
||||||
|
|
||||||
let _header_bot_token = request
|
let header_bot_token = request
|
||||||
.headers()
|
.headers()
|
||||||
.get("x-bot-token")
|
.get("x-bot-token")
|
||||||
.next()
|
.next()
|
||||||
.map(|x| x.to_string());
|
.map(|x| x.to_string());
|
||||||
|
|
||||||
/* if let Some(bot_token) = header_bot_token {
|
if let Some(bot_token) = header_bot_token {
|
||||||
if let Ok(user) = User::from_token(db, &bot_token, UserHint::Bot).await {
|
if let Ok(bot) = db.fetch_bot_by_token(&bot_token).await {
|
||||||
return Some(user);
|
if let Ok(user) = db.fetch_user(&bot.id).await {
|
||||||
|
return Some(user);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
} else */
|
} else if let Outcome::Success(session) = request.guard::<Session>().await {
|
||||||
if let Outcome::Success(session) = request.guard::<Session>().await {
|
|
||||||
// This uses a guard so can't really easily be refactored into from_token at this stage.
|
|
||||||
if let Ok(user) = db.fetch_user(&session.user_id).await {
|
if let Ok(user) = db.fetch_user(&session.user_id).await {
|
||||||
return Some(user);
|
return Some(user);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user