Fix cheat endpoint and jp client

This commit is contained in:
Ethan O'Brien
2026-02-10 14:35:19 -06:00
parent 8a666a56b5
commit 8e4300a7ea
2 changed files with 27 additions and 18 deletions

View File

@@ -43,24 +43,34 @@ pub fn get_region(headers: &HeaderMap) -> bool {
}
pub fn check_for_region(user: &mut JsonValue, headers: &HeaderMap) {
let items = if user["data"]["updated_value_list"]["item_list"].is_empty() {user["data"]["item_list"].clone()} else {user["data"]["updated_value_list"]["item_list"].clone()};
let is_jp = get_region(headers);
if !is_jp || items.is_empty() {
// returns true if jp
if !get_region(headers) {
return;
}
let mut id = 0;
for (i, data) in items.members().enumerate() {
if data["master_item_id"] == 15570008 {
id = i + 1;
break;
}
}
if id > 0 {
if user["data"]["updated_value_list"]["item_list"].is_empty() {
user["data"]["item_list"].array_remove(id - 1);
let targets = [
15570001, 15570002, 15570003, 15570004,
15570005, 15570006, 15570007, 15570008
];
let list = if !user["data"]["updated_value_list"]["item_list"].is_empty() {
&mut user["data"]["updated_value_list"]["item_list"]
} else {
user["data"]["updated_value_list"]["item_list"].array_remove(id - 1);
}
&mut user["data"]["item_list"]
};
let mut to_remove: Vec<usize> = list
.members()
.enumerate()
.filter(|(_, item)| {
targets.contains(&item["master_item_id"].as_i64().unwrap_or(0))
})
.map(|(i, _)| i)
.collect();
to_remove.reverse();
for i in to_remove {
list.array_remove(i);
}
}

View File

@@ -349,7 +349,7 @@ pub fn cheat(req: HttpRequest, _body: String) -> HttpResponse {
return error("Not logged in");
}
let key = userdata::webui_login_token(&token.unwrap());
if key.is_some() {
if key.is_none() {
return error("Not logged in");
}
let key = key.unwrap();
@@ -375,5 +375,4 @@ pub fn cheat(req: HttpRequest, _body: String) -> HttpResponse {
//.insert_header(("Access-Control-Allow-Credentials", "true"))
.insert_header(ContentType::json())
.body(json::stringify(resp))
}