diff --git a/.env.example b/.env.example index 789d946..51ddbe0 100644 --- a/.env.example +++ b/.env.example @@ -8,8 +8,14 @@ ADMIN_PASSWORD= NEXTAUTH_SECRET= -EMAIL= +EMAIL_SERVER= +EMAIL_PORT= +EMAIL_SECURE= +EMAIL_USER= EMAIL_PASS= +EMAIL_NEWSLETTER_ADDRESS= +EMAIL_CONTACT_ADDRESS= +EMAIL_CONTACT_DEST= SANITY_PROJECT_ID= diff --git a/app/api/newsletter/send/route.ts b/app/api/newsletter/send/route.ts index 5ea06ee..5af6c13 100644 --- a/app/api/newsletter/send/route.ts +++ b/app/api/newsletter/send/route.ts @@ -3,11 +3,11 @@ import nodemailer from "nodemailer"; import clientPromise from "@/lib/db"; const transporter = nodemailer.createTransport({ - host: "smtp.ethereal.email", //replace this also comment this if u not using etheral - // service: "gmail", // uncomment if u using gmail - port: 587, + host: process.env.EMAIL_SERVER, + port: parseInt(process.env.EMAIL_PORT ? process.env.EMAIL_PORT : "25"), + secure: Boolean(process.env.EMAIL_SECURE ? process.env.EMAIL_SECURE : false), auth: { - user: process.env.EMAIL, + user: process.env.EMAIL_USER, pass: process.env.EMAIL_PASS } }); @@ -15,7 +15,7 @@ const transporter = nodemailer.createTransport({ const sendEmail = async (to: string[], subject: string, html: string) => { try { await transporter.sendMail({ - from: process.env.EMAIL_USER, + from: process.env.EMAIL_NEWSLETTER_ADDRESS, to: to.join(", "), subject: subject, html: html diff --git a/app/api/newsletter/test/route.ts b/app/api/newsletter/test/route.ts index a8e473b..d5d7278 100644 --- a/app/api/newsletter/test/route.ts +++ b/app/api/newsletter/test/route.ts @@ -2,11 +2,11 @@ import { NextRequest, NextResponse } from "next/server"; import nodemailer from "nodemailer"; const transporter = nodemailer.createTransport({ - host: "smtp.ethereal.email", // Replace with your SMTP host - // service: "gmail", // Uncomment if using Gmail - port: 587, + host: process.env.EMAIL_SERVER, + port: parseInt(process.env.EMAIL_PORT ? process.env.EMAIL_PORT : "25"), + secure: Boolean(process.env.EMAIL_SECURE ? process.env.EMAIL_SECURE : false), auth: { - user: process.env.EMAIL, + user: process.env.EMAIL_USER, pass: process.env.EMAIL_PASS } }); @@ -14,7 +14,7 @@ const transporter = nodemailer.createTransport({ const sendEmail = async (to: string[], subject: string, html: string) => { try { await transporter.sendMail({ - from: process.env.EMAIL_USER, + from: process.env.EMAIL_NEWSLETTER_ADDRESS, to: to.join(", "), subject: subject, html: html diff --git a/lib/nodemailer/nodemailer.ts b/lib/nodemailer/nodemailer.ts index ea3008e..45bb9c4 100644 --- a/lib/nodemailer/nodemailer.ts +++ b/lib/nodemailer/nodemailer.ts @@ -1,17 +1,18 @@ import nodemailer from "nodemailer"; export const transporter = nodemailer.createTransport({ - host: "smtp.ethereal.email", - port: 587, + host: process.env.EMAIL_SERVER, + port: parseInt(process.env.EMAIL_PORT ? process.env.EMAIL_PORT : "25"), + secure: Boolean(process.env.EMAIL_SECURE ? process.env.EMAIL_SECURE : false), auth: { - user: process.env.EMAIL, + user: process.env.EMAIL_USER, pass: process.env.EMAIL_PASS } }); export const mailOptions = { - from: process.env.EMAIL, - to: process.env.EMAIL, + from: process.env.EMAIL_CONTACT_ADDRESS, + to: process.env.EMAIL_CONTACT_DEST, html: `