From f45afbfa3d1d33b7a27a54b68a6b7f0e471b2374 Mon Sep 17 00:00:00 2001 From: ht Date: Fri, 28 Aug 2026 22:57:58 +0300 Subject: [PATCH] =?UTF-8?q?fix:=20ge=C3=A7ersiz/yer=20tutucu=20RESEND=5FAP?= =?UTF-8?q?I=5FKEY=20'aktif'=20g=C3=B6r=C3=BCnmesin?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit emailConfigured artık anahtarın 're_' ile başlamasını arıyor; böylece Coolify'da boş/yer tutucu değer bırakıldığında arayüz yanlışlıkla 'E-posta aktif' demiyor. --- server/email.mjs | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/server/email.mjs b/server/email.mjs index 2746197..3f4c742 100644 --- a/server/email.mjs +++ b/server/email.mjs @@ -12,8 +12,11 @@ const RESEND_ENDPOINT = 'https://api.resend.com/emails'; +// Resend anahtarları 're_' ile başlar. Yer tutucu/boş değerler yapılandırılmış +// sayılmaz — aksi halde arayüz "aktif" der ama gönderim hata verir. export function emailConfigured() { - return Boolean(process.env.RESEND_API_KEY); + const k = (process.env.RESEND_API_KEY || '').trim(); + return k.startsWith('re_') && k.length > 10; } export function emailFrom() { @@ -21,8 +24,10 @@ export function emailFrom() { } export async function sendEmail({ to, subject, html, text }) { - const key = process.env.RESEND_API_KEY; - if (!key) throw new Error('E-posta yapılandırılmamış (RESEND_API_KEY yok)'); + const key = (process.env.RESEND_API_KEY || '').trim(); + if (!emailConfigured()) { + throw new Error("E-posta yapılandırılmamış — Coolify'da RESEND_API_KEY değerine gerçek anahtarı (re_...) yapıştırın."); + } if (!to || !subject || (!html && !text)) throw new Error('Eksik alan: to, subject ve html/text gerekli'); const res = await fetch(RESEND_ENDPOINT, {