feat: initial Funktechnik Schubert website

This commit is contained in:
Schubert Ferenc 2026-07-03 19:14:34 +02:00
commit 9a648e2ec8
35 changed files with 7521 additions and 0 deletions

34
app/api/repair/route.ts Normal file
View file

@ -0,0 +1,34 @@
import { NextResponse } from "next/server";
function required(value: FormDataEntryValue | null) {
return typeof value === "string" && value.trim().length > 0;
}
export async function POST(request: Request) {
const form = await request.formData();
const name = form.get("name");
const email = form.get("email");
const manufacturer = form.get("manufacturer");
const model = form.get("model");
const description = form.get("description");
const privacy = form.get("privacy");
if (!required(name) || !required(email) || !required(manufacturer) || !required(model) || !required(description) || privacy !== "on") {
return NextResponse.json({ message: "Bitte füllen Sie alle Pflichtfelder aus." }, { status: 400 });
}
const intakeUrl = process.env.OLYMPUS_INTAKE_API_URL;
const hasIntegrationToken = Boolean(process.env.OLYMPUS_INTAKE_API_TOKEN);
console.info("repair_intake.received", {
hasIntakeIntegration: Boolean(intakeUrl && hasIntegrationToken),
manufacturer: String(manufacturer),
model: String(model),
hasPhone: required(form.get("phone")),
hasSerialNumber: required(form.get("serialNumber")),
});
return NextResponse.json({
message: "Ihre Reparaturanfrage wurde erfasst. Sie erhalten nach Prüfung eine Rückmeldung.",
});
}