next-enterprise/app/api/routes/route.ts

36 lines
1 KiB
TypeScript
Raw Normal View History

2024-04-22 00:01:07 +05:30
import { mailOptions, transporter } from "./mailTransporter"
2024-04-22 05:13:51 +00:00
import { replaceMergeTags, stripHTMLTags } from "app/mail/sliceHtml"
2024-04-22 00:01:07 +05:30
import { NextResponse } from "next/server"
2024-04-22 05:13:51 +00:00
import fs from "fs"
import path from "path"
2024-04-22 00:01:07 +05:30
2024-04-22 05:13:51 +00:00
export async function POST(req: any) {
2024-04-22 00:01:07 +05:30
const data = await req.json()
2024-04-22 05:13:51 +00:00
const htmlFilePath = path.join(process.cwd(), "app/mail", "contactForm.html")
let htmlContent: string
try {
htmlContent = fs.readFileSync(htmlFilePath, "utf8")
} catch (err) {
console.error("Error reading HTML file: ", err)
return
}
htmlContent = replaceMergeTags(data, htmlContent)
const plainTextContent = stripHTMLTags(htmlContent)
2024-04-22 00:01:07 +05:30
try {
2024-04-24 09:22:06 +00:00
console.log(req.headers)
// await transporter.sendMail({
// ...mailOptions,
// subject: `Contact Inquiry - VizoleLabs Web`,
// text: plainTextContent,
// html: htmlContent,
// })
2024-04-22 00:01:07 +05:30
return NextResponse.json({ success: true })
} catch (error: any) {
console.error(error)
return NextResponse.json({ error: error.message }, { status: error.status })
}
}