fix: show live ticker across app and website and suppress review emails
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
import { readSubscribers, writeSubscribers } from '../../utils/newsletter.js'
|
||||
import { randomUUID } from 'crypto'
|
||||
import nodemailer from 'nodemailer'
|
||||
import { createMailTransport } from '../../utils/mail-transport.js'
|
||||
import crypto from 'crypto'
|
||||
import fs from 'fs/promises'
|
||||
import path from 'path'
|
||||
@@ -129,7 +129,7 @@ export default defineEventHandler(async (event) => {
|
||||
})
|
||||
} else {
|
||||
// Bestätigungsmail erneut senden
|
||||
await sendConfirmationEmail(existing.email, existing.name || name, existing.confirmationToken, group.name)
|
||||
await sendConfirmationEmail(event, existing.email, existing.name || name, existing.confirmationToken, group.name)
|
||||
registerRateLimitSuccess(event, { name: 'newsletter:subscribe:email', keyParts: [emailKey] })
|
||||
return {
|
||||
success: true,
|
||||
@@ -158,7 +158,7 @@ export default defineEventHandler(async (event) => {
|
||||
})
|
||||
} else {
|
||||
// Bestätigungsmail erneut senden
|
||||
await sendConfirmationEmail(existingEmail.email, existingEmail.name || name, existingEmail.confirmationToken, group.name)
|
||||
await sendConfirmationEmail(event, existingEmail.email, existingEmail.name || name, existingEmail.confirmationToken, group.name)
|
||||
registerRateLimitSuccess(event, { name: 'newsletter:subscribe:email', keyParts: [emailKey] })
|
||||
return {
|
||||
success: true,
|
||||
@@ -186,7 +186,7 @@ export default defineEventHandler(async (event) => {
|
||||
}
|
||||
} else {
|
||||
// Bestätigungsmail senden
|
||||
await sendConfirmationEmail(existingEmail.email, existingEmail.name, existingEmail.confirmationToken, group.name)
|
||||
await sendConfirmationEmail(event, existingEmail.email, existingEmail.name, existingEmail.confirmationToken, group.name)
|
||||
registerRateLimitSuccess(event, { name: 'newsletter:subscribe:email', keyParts: [emailKey] })
|
||||
return {
|
||||
success: true,
|
||||
@@ -215,7 +215,7 @@ export default defineEventHandler(async (event) => {
|
||||
await writeSubscribers(subscribers)
|
||||
|
||||
// Bestätigungsmail senden
|
||||
await sendConfirmationEmail(email, name, confirmationToken, group.name)
|
||||
await sendConfirmationEmail(event, email, name, confirmationToken, group.name)
|
||||
|
||||
registerRateLimitSuccess(event, { name: 'newsletter:subscribe:email', keyParts: [emailKey] })
|
||||
return {
|
||||
@@ -234,7 +234,7 @@ export default defineEventHandler(async (event) => {
|
||||
}
|
||||
})
|
||||
|
||||
async function sendConfirmationEmail(email, name, token, groupName) {
|
||||
async function sendConfirmationEmail(event, email, name, token, groupName) {
|
||||
const smtpUser = process.env.SMTP_USER
|
||||
const smtpPass = process.env.SMTP_PASS
|
||||
|
||||
@@ -246,7 +246,7 @@ async function sendConfirmationEmail(email, name, token, groupName) {
|
||||
const baseUrl = process.env.NUXT_PUBLIC_BASE_URL || 'http://localhost:3100'
|
||||
const confirmationUrl = `${baseUrl}/newsletter/confirm?token=${token}`
|
||||
|
||||
const transporter = nodemailer.createTransport({
|
||||
const transporter = createMailTransport(event, {
|
||||
host: process.env.SMTP_HOST || 'smtp.gmail.com',
|
||||
port: process.env.SMTP_PORT || 587,
|
||||
secure: false,
|
||||
|
||||
Reference in New Issue
Block a user