(change): Client security

This commit is contained in:
dbob16 committed 2026-09-10 17:58:25 -04:00
1 parent a11c313a8e
commit 103f1cf3c4
16 files changed
+177 -115

No files matched your search

@@ -15,44 +15,50 @@ export const GET = async () => {
export const POST = async ({ request }) => {
const reqData = await request.json();
for (let i = 0; i < reqData.prefixes.length; i += chunk_size) {
const chunk = reqData.prefixes.slice(i, i + chunk_size);
await db
.insert(prefixes)
.values(chunk)
.onConflictDoUpdate({
target: prefixes.prefix,
set: { color: sql`EXCLUDED.color`, weight: sql`EXCLUDED.weight` }
});
}
for (let i = 0; i < reqData.baskets.length; i += chunk_size) {
const chunk = reqData.baskets.slice(i, i + chunk_size);
await db
.insert(baskets)
.values(chunk)
.onConflictDoUpdate({
target: [baskets.prefix, baskets.b_id],
set: {
description: sql`EXCLUDED.description`,
donors: sql`EXCLUDED.donors`,
winning_ticket: sql`EXCLUDED.winning_ticket`
}
});
}
for (let i = 0; i < reqData.tickets.length; i += chunk_size) {
const chunk = reqData.tickets.slice(i, i + chunk_size);
await db
.insert(tickets)
.values(chunk)
.onConflictDoNothing({
target: [tickets.prefix, tickets.t_id],
set: {
first_name: sql`EXCLUDED.first_name`,
last_name: sql`EXCLUDED.last_name`,
phone_number: sql`EXCLUDED.phone_number`,
pref: sql`EXCLUDED.pref`
}
});
}
if (reqData.prefixes) {
for (let i = 0; i < reqData.prefixes.length; i += chunk_size) {
const chunk = reqData.prefixes.slice(i, i + chunk_size);
await db
.insert(prefixes)
.values(chunk)
.onConflictDoUpdate({
target: prefixes.prefix,
set: { color: sql`EXCLUDED.color`, weight: sql`EXCLUDED.weight` }
});
};
};
if (reqData.baskets) {
for (let i = 0; i < reqData.baskets.length; i += chunk_size) {
const chunk = reqData.baskets.slice(i, i + chunk_size);
await db
.insert(baskets)
.values(chunk)
.onConflictDoUpdate({
target: [baskets.prefix, baskets.b_id],
set: {
description: sql`EXCLUDED.description`,
donors: sql`EXCLUDED.donors`,
winning_ticket: sql`EXCLUDED.winning_ticket`
}
});
};
};
if (reqData.tickets) {
for (let i = 0; i < reqData.tickets.length; i += chunk_size) {
const chunk = reqData.tickets.slice(i, i + chunk_size);
await db
.insert(tickets)
.values(chunk)
.onConflictDoNothing({
target: [tickets.prefix, tickets.t_id],
set: {
first_name: sql`EXCLUDED.first_name`,
last_name: sql`EXCLUDED.last_name`,
phone_number: sql`EXCLUDED.phone_number`,
pref: sql`EXCLUDED.pref`
}
});
};
};
return json({ details: 'Data loaded successfully.' });
};