Fix file key search issue

This commit is contained in:
regalijan 2023-10-19 16:51:00 -04:00
parent 756f82fb57
commit a14c0724e1
Signed by: regalijan
GPG Key ID: 5D4196DA269EF520

View File

@ -51,8 +51,24 @@ export async function onRequestPost(context: RequestContext) {
if (!(body.get("user") as string).match(/^\d{17,19}$/)) if (!(body.get("user") as string).match(/^\d{17,19}$/))
return jsonError("Invalid user", 400); return jsonError("Invalid user", 400);
// @ts-expect-error const fileKeys = Array.from(body.keys()).filter((key) =>
const files: File[] = body.keys().find((key) => key.match(/^files\[\d]$/)); key.match(/^file\d$/),
);
if (fileKeys.length > 5)
return jsonError("Only up to five files are allowed per infraction", 400);
const files: File[] = [];
for (const fileKey of fileKeys) {
const file = body.get(fileKey);
if (!(file instanceof File))
return jsonError("File keys can only contain files", 400);
files.push(file);
}
const urlPromises = []; const urlPromises = [];
const origin = context.request.headers.get("Origin"); const origin = context.request.headers.get("Origin");