Compare commits
5 Commits
135e4e7264
...
cd0dc4feec
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
cd0dc4feec | ||
|
|
602a04d9ba | ||
|
|
b8fcccb2b7 | ||
|
|
491af09c30 | ||
|
|
7ec4cd9299 |
@ -3,12 +3,19 @@ import { getAccountIdForRequest } from "../../services/loginService.ts";
|
||||
import { sendWsBroadcastTo } from "../../services/wsService.ts";
|
||||
import type { IAccountCheats } from "../../types/inventoryTypes/inventoryTypes.ts";
|
||||
import type { RequestHandler } from "express";
|
||||
import { logger } from "../../utils/logger.ts";
|
||||
|
||||
export const setAccountCheatController: RequestHandler = async (req, res) => {
|
||||
const accountId = await getAccountIdForRequest(req);
|
||||
const payload = req.body as ISetAccountCheatRequest;
|
||||
const inventory = await getInventory(accountId, payload.key);
|
||||
inventory[payload.key] = payload.value;
|
||||
|
||||
if (payload.value == undefined) {
|
||||
logger.warn(`Aborting setting ${payload.key} as undefined!`);
|
||||
return;
|
||||
}
|
||||
|
||||
inventory[payload.key] = payload.value as never;
|
||||
await inventory.save();
|
||||
res.end();
|
||||
if (["infiniteCredits", "infinitePlatinum", "infiniteEndo", "infiniteRegalAya"].indexOf(payload.key) != -1) {
|
||||
@ -18,5 +25,5 @@ export const setAccountCheatController: RequestHandler = async (req, res) => {
|
||||
|
||||
interface ISetAccountCheatRequest {
|
||||
key: keyof IAccountCheats;
|
||||
value: boolean;
|
||||
value: IAccountCheats[keyof IAccountCheats];
|
||||
}
|
||||
|
||||
@ -1986,7 +1986,11 @@ function updateInventory() {
|
||||
}
|
||||
|
||||
for (const elm of accountCheats) {
|
||||
elm.checked = !!data[elm.id];
|
||||
if (elm.type === "checkbox") {
|
||||
elm.checked = !!data[elm.id];
|
||||
} else if (elm.type === "number") {
|
||||
elm.value = data[elm.id] !== undefined ? data[elm.id] : elm.getAttribute("data-default") || "";
|
||||
}
|
||||
}
|
||||
});
|
||||
});
|
||||
@ -3214,9 +3218,10 @@ function doIntrinsicsUnlockAll() {
|
||||
});
|
||||
}
|
||||
|
||||
document.querySelectorAll("#account-cheats input[type=checkbox]").forEach(elm => {
|
||||
document.querySelectorAll("#account-cheats input[type=checkbox], #account-cheats input[type=number]").forEach(elm => {
|
||||
elm.onchange = function () {
|
||||
revalidateAuthz().then(() => {
|
||||
const value = elm.type === "checkbox" ? elm.checked : elm.value;
|
||||
$.post({
|
||||
url: "/custom/setAccountCheat?" + window.authz,
|
||||
contentType: "application/json",
|
||||
@ -3237,7 +3242,7 @@ document.querySelectorAll("#guild-cheats input[type=checkbox]").forEach(elm => {
|
||||
contentType: "application/json",
|
||||
data: JSON.stringify({
|
||||
key: elm.id,
|
||||
value: elm.checked
|
||||
value: value
|
||||
})
|
||||
});
|
||||
});
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user