fix: show live ticker across app and website and suppress review emails
Some checks failed
Code Analysis and Production Deploy / analyze (push) Failing after 5m18s
Code Analysis and Production Deploy / deploy-production (push) Has been skipped
Code Analysis and Production Deploy / deploy-test (push) Has been skipped

This commit is contained in:
Torsten Schulz (local)
2026-10-29 21:49:51 +01:00
parent 10a37180de
commit 472bec4519
29 changed files with 280 additions and 70 deletions

View File

@@ -1,4 +1,4 @@
import nodemailer from 'nodemailer'
import { createMailTransport } from '../../../../utils/mail-transport.js'
import { readUsers, writeUsers } from '../../../../utils/auth.js'
import { assertRateLimit, getClientIp, registerRateLimitFailure, registerRateLimitSuccess } from '../../../../utils/rate-limit.js'
import { generateRecoveryToken, hashRecoveryToken, pruneRecoveryTokens } from '../../../../utils/passkey-recovery.js'
@@ -70,7 +70,7 @@ export default defineEventHandler(async (event) => {
const smtpPass = process.env.SMTP_PASS
if (smtpUser && smtpPass) {
const transporter = nodemailer.createTransport({
const transporter = createMailTransport(event, {
host: process.env.SMTP_HOST || 'smtp.gmail.com',
port: process.env.SMTP_PORT || 587,
secure: false,

View File

@@ -262,7 +262,7 @@ export default defineEventHandler(async (event) => {
// Send notification emails through the same central recipient logic as password registration.
try {
await sendRegistrationNotification({ name, email, phone })
await sendRegistrationNotification({ name, email, phone }, event)
} catch (emailError) {
console.error('E-Mail-Versand fehlgeschlagen:', emailError)
}

View File

@@ -66,7 +66,7 @@ export default defineEventHandler(async (event) => {
// Send notification to Vorstand/admin via central email service
try {
await sendRegistrationNotification({ name, email, phone })
await sendRegistrationNotification({ name, email, phone }, event)
} catch (emailError) {
console.error('Registrierungs-Benachrichtigung fehlgeschlagen:', emailError)
}

View File

@@ -1,5 +1,5 @@
import { readUsers, writeUsers } from '../../utils/auth.js'
import nodemailer from 'nodemailer'
import { createMailTransport } from '../../utils/mail-transport.js'
import crypto from 'crypto'
import { assertRateLimit, getClientIp, registerRateLimitFailure, registerRateLimitSuccess } from '../../utils/rate-limit.js'
import { writeAuditLog } from '../../utils/audit-log.js'
@@ -152,7 +152,7 @@ export default defineEventHandler(async (event) => {
}
await logStep('token_storage', 'completed', { userId: user.id })
const transporter = nodemailer.createTransport({
const transporter = createMailTransport(event, {
host: process.env.SMTP_HOST || 'smtp.gmail.com',
port: process.env.SMTP_PORT || 587,
secure: process.env.SMTP_SECURE === 'true',