/* ===================================================================== GET /api/account/export — liefert alle über dieses Konto gespeicherten Daten als JSON-Datei zum Download (DSGVO Art. 15 "Auskunftsrecht" + Art. 20 "Recht auf Datenübertragbarkeit"). Echtes Selbstbedienungs-Werkzeug statt eines manuellen Prozesses. ===================================================================== */ import { getCustomer } from "../../_shared/customer-auth.js"; export async function onRequestGet(context) { const { request, env } = context; const customer = await getCustomer(request, env); if (!customer) { return new Response(JSON.stringify({ ok: false, error: "Nicht angemeldet." }), { status: 401, headers: { "Content-Type": "application/json" }, }); } const daten = { konto: { email: customer.email, name: customer.name, anmeldeart: customer.provider, erstelltAm: customer.created_at, }, hinweis: "Dies sind alle Daten, die Van's DIY & Bastelbedarf zu deinem Kundenkonto speichert. " + "Bereits aufgegebene Bestellungen werden getrennt davon aus gesetzlichen Aufbewahrungsgründen " + "weiter gespeichert (siehe Datenschutzerklärung, Abschnitt Bestellabwicklung).", }; return new Response(JSON.stringify(daten, null, 2), { status: 200, headers: { "Content-Type": "application/json", "Content-Disposition": 'attachment; filename="meine-daten.json"', }, }); }