El correo sale en MAYÚSCULAS en los correos de token y activación

- Token: el asunto era «Token de seguridad - NightSpire» a secas. El original
  decía «Token de seguridad de la cuenta {username} - {NOMBRE_SERVIDOR}»; la
  reescritura se dejó la cuenta por el camino. Ese correo sale de
  `session.bnetEmail`, que ya va normalizado, así que las MAYÚSCULAS son gratis.
- Activación: asunto y cuerpo pasan a normalizar el correo, para que se vea igual
  que en el del token. El DESTINATARIO va sin normalizar: es la dirección tal
  cual la escribió el usuario.

El correo de activación se manda desde DOS sitios: `registerAccount` y
`recover.ts` (el reenvío del enlace, «no me llegó»). Se cambian los dos o saldría
distinto según por dónde lo pidieras. Lo delató el build: /api/auth/activate
cargaba un chunk y /api/auth/recover otro con la versión vieja.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-07-15 18:40:33 +00:00
parent 653f7f0a07
commit edf1feedf6
3 changed files with 20 additions and 4 deletions
+8 -1
View File
@@ -78,7 +78,14 @@ export async function registerAccount(input: RegisterInput): Promise<Result> {
)
const link = `${process.env.SITE_URL}/activate-account?act=${hash}`
await sendMail(email, `Activación de la cuenta ${email} - NightSpire`, activationEmailHtml(email, link))
// El correo se muestra normalizado (MAYÚSCULAS) en el asunto y en el cuerpo, igual
// que en el del token de seguridad, que lo saca de `session.bnetEmail` (ya normalizado).
// El DESTINATARIO va sin normalizar: es la dirección tal cual la escribió el usuario.
await sendMail(
email,
`Activación de la cuenta ${normalizeEmail(email)} - NightSpire`,
activationEmailHtml(normalizeEmail(email), link),
)
return { success: true }
}