feat: abonelik iptal ekranı (ayrılma nedeni + açıklama) & gerçek abonelik rozeti (yönetici erişimi aboneliği gizlemesin)

This commit is contained in:
2026-08-29 21:47:58 +03:00
parent 5d502c8ae4
commit 65997055fe
8 changed files with 261 additions and 7 deletions
+10
View File
@@ -62,9 +62,19 @@ export function kullanim(email, opts) {
const belge = documentUsage(email);
const ekip = (getData(email, 'ekip') || []).length;
const takip = (getData(email, 'kanban') || []).filter?.((t) => t?.takipte)?.length ?? null;
// Yönetici hesapları her zaman tam erişimlidir; bu, satın alınan aboneliği
// GİZLEMEMELİ — arayüz ikisini ayrı gösterebilsin diye ikisini de döndürüyoruz.
const u = getUser(email);
const abonelik = u && PLAN_HAKLARI[u.plan] && !(u.plan_bitis && new Date(u.plan_bitis) < new Date())
? u.plan : 'ucretsiz';
return {
plan: planOf(email, opts),
planAdi: h.ad,
yonetici: Boolean(opts?.isAdmin),
abonelik, // gerçekten satın alınan plan
abonelikAdi: PLAN_HAKLARI[abonelik]?.ad || 'Ücretsiz',
abonelikVar: abonelik !== 'ucretsiz',
iptalEdilebilir: Boolean(u?.stripe_sub_id) && abonelik !== 'ucretsiz',
haklar: h,
kullanilan: {
belgeAdet: belge.adet,