import { jsonError, jsonResponse } from "../../../common.js"; export async function onRequestDelete(context: RequestContext) { const noteId = context.params.id as string; const creatorIdResult: null | Record = await context.env.D1.prepare( "SELECT created_by FROM game_mod_logs WHERE id = ?;", ) .bind(noteId) .first(); if (creatorIdResult?.created_by !== context.data.current_user.id) return jsonError("Cannot delete notes that are not your own", 403); await context.env.D1.prepare("DELETE FROM game_mod_logs WHERE id = ?;") .bind(noteId) .first(); return new Response(null, { status: 204 }); } export async function onRequestGet(context: RequestContext) { const noteId = context.params.id as string; const result = await context.env.D1.prepare( "SELECT * FROM game_mod_notes WHERE id = ?;", ) .bind(noteId) .first(); if (!result) return jsonError("Note not found", 404); const noteData = structuredClone(result); const gmeEntry: null | { time: number; user: string; name: string } = await context.env.DATA.get(`gamemod_${result.created_by}`, "json"); if (gmeEntry) noteData.creator_name = gmeEntry.name; return jsonResponse(JSON.stringify(noteData)); }