Add inactivity deletion endpoint

This commit is contained in:
regalijan 2023-10-19 16:50:15 -04:00
parent ad5505b857
commit c295f3e4df
Signed by: regalijan
GPG Key ID: 5D4196DA269EF520

View File

@ -0,0 +1,26 @@
export async function onRequestDelete(context: RequestContext) {
const kvResult = await context.env.DATA.get(
`inactivity_${context.params.id}`,
);
if (
!kvResult ||
(JSON.parse(kvResult).user.id !== context.data.current_user.id &&
!(context.data.current_user.permissions & (1 << 0)))
)
return new Response('{"error":"No inactivity notice with that ID"}', {
headers: {
"content-type": "application/json",
},
status: 404,
});
await context.env.DATA.delete(`inactivity_${context.params.id}`);
await context.env.D1.prepare("DELETE FROM inactivity_notices WHERE id = ?;")
.bind(context.params.id)
.run();
return new Response(null, {
status: 204,
});
}