import { NextRequest, NextResponse, userAgent, userAgentFromString, } from 'next/server' import prismaClient from '@/lib/prismaClient' import { sendMail } from '@/lib/mail' export async function POST(req: NextRequest) { const ip = req.ip || req.headers.get('x-forwarded-for') const { browser, device, os, isBot, ua } = userAgent(req) // const userAgentString = userAgentFromString(ua) const body = await req.json() try { const result = await prismaClient.supportMessage.create({ data: { ...body, ip, userAgent: ua, }, }) // send email to user await sendMail({ to: body.email, cc: process.env.ADMIN_EMAIL, subject: `Support request submitted: ${body.category}-${result.id}`, html: `
      

Support request submitted

Thank you for contacting us. We will get back to you soon.

Here is a copy of your message:


Category


${body.category}

Message


${body.message}

Contact Information

Name: ${body.name}

Email: ${body.email}

Phone: ${body.phone || 'N/A'}

`, }) return NextResponse.json({ message: 'Support request submitted', }) } catch (error) { console.error(error) return NextResponse.json( { message: `Support request failed to submit : ${error.message}`, }, { status: 400 } ) } }