subscriptions tablosunda trial_ends_at, has_trial, trial_days kolonları varisTrialActive() methodu hazırisInTrial() methodu hazır
AuthController::register() method'unda mesaj var: "7 günlük deneme başladı"
Ama gerçekte trial subscription oluşturulmuyor!
Kod setting('auth_registration_trial_days') kullanıyor ama
Database'de bu setting tanımlı değil!
SubscriptionService::create() trial ekleyebilir AMA
Register sonrası otomatik çağrılmıyor!
Kod !$user->subscriptions()->exists() kontrolü yapıyor
Ama user subscription'ını silip yeniden alabilir (1 kere kuralı çalışmıyor)
AuthController::register() içinde SubscriptionService kullanarak
otomatik trial subscription oluştur
subscription_plans tablosuna "7 Günlük Deneme" planı ekle (fiyat: 0 TL)
users tablosuna has_used_trial (boolean) kolonu ekle
Trial başladığında true yap, bir daha izin verme
Cron job ile günlük kontrol: trial_ends_at < now()
Status 'trial' → 'expired' yap
Trial bitmeden 1 gün önce bildirim gönder
"Premium'a geç, sınırsız dinlemeye devam et"
1. users tablosuna has_used_trial kolonu ekle
2. settings tablosuna auth_registration_trial_days ekle (varsayılan: 7)
3. subscription_plans tablosuna "Trial" planı ekle
isPremium() = true dönerstatus = 'trial' → status = 'expired'isPremium() = false dönerhas_used_trial = true olduğu için izin verilmez
Register sonrası otomatik trial subscription oluştur
Etki: Yüksek - Kullanıcı kayıt olunca hemen premium olmalı
has_used_trial kolonu ile trial'ı sadece 1 kere kullanabilsin
Etki: Yüksek - Trial suistimali engelle
Trial biten subscription'ları otomatik expire et
Etki: Orta - Trial bitince premium kapat
Trial bitiminden önce hatırlatma gönder
Etki: Düşük - Conversion artışı için