Proje: Okul Platform · Hub: Okul Platform — Domain
Kural
KVKK onayı ve pazarlama izni kullanıcıdan sadece bir kez alınır. Zaten verilmişse tekrar gösterilmez.
Kontrol Metotları
App\Service\UserService:
hasAuthUserConsentedToKvkk()— aktifb2c_kvkk_consentagreement’ı imzalandıysatrue; fallback:user_details.kvkk === '1'. 30 günlük versiyonlu cache.hasAuthUserConsentedToMarketing()—user_details.notification === Config::USER_NOTIFICATION_ALL_IDisetrue. Cache yok, anlık.
Form Davranışı
Tüm teklif/iletişim formlarında (desktop + mobile, ~15 view):
@if(!\App\Service\UserService::hasAuthUserConsentedToKvkk())
{{-- KVKK checkbox --}}
@endif
@if(!\App\Service\UserService::hasAuthUserConsentedToMarketing())
{{-- Pazarlama izni checkbox --}}
@endifLead Pool İstisnası
LeadPoolFormService::validate() KVKK’yı required|in:1,on,true ile doğrular (SchoolOfferService gibi hasAuthUserConsentedToKvkk() kontrolü yok). Bu yüzden lead pool formlarında zaten onaylamış kullanıcılar için hidden input eklenir:
@if(\App\Service\UserService::hasAuthUserConsentedToKvkk())
<input type="hidden" name="kvkk_consent" value="1">
@else
{{-- visible checkbox --}}
@endifKayıt Formu
register.blade.php (frontend + mobile) her zaman KVKK gösterir — kayıt formunda kullanıcı henüz hesabı olmadığından hasAuthUserConsentedToKvkk() zaten false döner.
Veri Depolama
user_agreement_text_signstablosu — her consent kaydı IP ve UA ile- Model tipler:
AgreementText::TYPE_B2C_KVKK_CONSENT,AgreementText::TYPE_B2C_MARKETING_CONSENT
Related
- 2026-04-14-customer-vs-user-login-rules — kullanıcı login kuralları