From fed881de498558dca88959bb48bb476cc413d127 Mon Sep 17 00:00:00 2001 From: Mustafa Yildiz Date: Tue, 18 Aug 2026 12:43:01 +0300 Subject: [PATCH] =?UTF-8?q?fix:=20hardcoded=2014=20g=C3=BCnl=C3=BCk=20tria?= =?UTF-8?q?l=20fallback'i=20app=5Fsettings.trial=5Fdays'e=20ta=C5=9F=C4=B1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Profil bulunamadığında otomatik açılan trial süresi Postgres trigger'ıyla (handle_new_user, 3 gün) tutarsızdı. İkisi de artık aynı app_settings tablosundan okuyor (bkz. laawos/sql/19_configurable_trial_and_status_gate.sql). Co-Authored-By: Claude Sonnet 5 --- src/middleware/auth.ts | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/middleware/auth.ts b/src/middleware/auth.ts index 1f367e2..3f45c6b 100644 --- a/src/middleware/auth.ts +++ b/src/middleware/auth.ts @@ -29,9 +29,13 @@ export const requireAuth = async (req: AuthenticatedRequest, res: Response, next let userProfile = profile; if (!userProfile) { - // Profil bulunamadıysa kullanıcıya otomatik deneme profili aç + // Profil bulunamadıysa kullanıcıya otomatik deneme profili aç — süre + // app_settings.trial_days'ten okunuyor (bkz. sql/19_configurable_trial_and_status_gate.sql), + // handle_new_user() Postgres trigger'ıyla aynı kaynağı kullanıyor. + const { data: settings } = await supabase.from('app_settings').select('trial_days').maybeSingle(); + const trialDays = settings?.trial_days ?? 7; const trialEndDate = new Date(); - trialEndDate.setDate(trialEndDate.getDate() + 14); + trialEndDate.setDate(trialEndDate.getDate() + trialDays); const { data: newProfile } = await supabase .from('profiles') .insert([{ id: user.id, license_status: 'trial', trial_end_date: trialEndDate.toISOString() }])