Move all encryption to a session handler

This commit is contained in:
Ethan O'Brien
2026-07-24 14:20:26 -05:00
parent 2cd11c8467
commit 0b0b50de36
23 changed files with 155 additions and 241 deletions
+3 -7
View File
@@ -1,8 +1,7 @@
use jzon::{object};
use actix_web::{web, HttpRequest, Responder};
use crate::router::{userdata, global, items, databases};
use crate::encryption;
use crate::router::{userdata, global, items, databases, Login, Session};
pub fn routes(cfg: &mut web::ServiceConfig) {
cfg.service(
@@ -12,8 +11,7 @@ pub fn routes(cfg: &mut web::ServiceConfig) {
);
}
async fn shop(req: HttpRequest) -> impl Responder {
let key = global::get_login(req.headers(), "");
async fn shop(req: HttpRequest, Login(key): Login) -> impl Responder {
let user = userdata::get_acc(&key);
global::api(&req, Some(object!{
@@ -21,9 +19,7 @@ async fn shop(req: HttpRequest) -> impl Responder {
}))
}
async fn buy(req: HttpRequest, body: String) -> impl Responder {
let key = global::get_login(req.headers(), &body);
let body = jzon::parse(&encryption::decrypt_packet(&body).unwrap()).unwrap();
async fn buy(req: HttpRequest, Session { key, body }: Session) -> impl Responder {
let mut user = userdata::get_acc(&key);
let shop_item_id = body["master_shop_item_id"].as_i64().unwrap();