fix(sonuc): ilk ekran ödeme öncesi tek gerçek önizlemeyi gösterir #5
@@ -25,7 +25,7 @@ import { useGorunumOlayi } from "@/components/use-gorunum-olayi";
|
|||||||
import { olay, siraKovasi } from "@/lib/analitik";
|
import { olay, siraKovasi } from "@/lib/analitik";
|
||||||
import { dilimdenRisk, riskHesapla } from "@/lib/risk";
|
import { dilimdenRisk, riskHesapla } from "@/lib/risk";
|
||||||
import { turkishSlugify } from "@/lib/slug";
|
import { turkishSlugify } from "@/lib/slug";
|
||||||
import { PROFIL_DEGISTI_EVENT, sonucHref } from "@/features/sihirbaz/sihirbaz-sabitler";
|
import { listemUretHref, PROFIL_DEGISTI_EVENT } from "@/features/sihirbaz/sihirbaz-sabitler";
|
||||||
import { tercihProfiliOku } from "@/features/sihirbaz/sihirbaz-profil";
|
import { tercihProfiliOku } from "@/features/sihirbaz/sihirbaz-profil";
|
||||||
import type { TadimlikSatir, TadimlikTip } from "@/lib/tadimlik-havuzu";
|
import type { TadimlikSatir, TadimlikTip } from "@/lib/tadimlik-havuzu";
|
||||||
|
|
||||||
@@ -97,6 +97,13 @@ export function TadimlikSatiri({
|
|||||||
return () => window.removeEventListener(PROFIL_DEGISTI_EVENT, guncelle);
|
return () => window.removeEventListener(PROFIL_DEGISTI_EVENT, guncelle);
|
||||||
}, [sira, tur, ilk]);
|
}, [sira, tur, ilk]);
|
||||||
|
|
||||||
|
// SERİ KIRILMASI (22 Eyl 2026): bu olay bu değişiklikten önce /sonuc'un
|
||||||
|
// ~2.200 px altında, tablonun arkasında yaşıyordu; artık tadımlık ilk
|
||||||
|
// ekranda. Adet bir gecede 0'dan yukarı fırlayacak — kırık ölçüm değil,
|
||||||
|
// kazanılan payda. Öncesi ve sonrası KARŞILAŞTIRILAMAZ; anlamlı ölçüt
|
||||||
|
// bundan sonra "tadımlık CTA tıklaması / tadımlık görüntülenmesi" oranıdır.
|
||||||
|
// (Not analitik.ts'e değil buraya yazıldı: o dosya aynı gece başka bir
|
||||||
|
// dalın altında — CTO şartnamesi, çakışma kararı #1.)
|
||||||
const gorunumRef = useGorunumOlayi<HTMLElement>("tadimlik_goruntulendi", {
|
const gorunumRef = useGorunumOlayi<HTMLElement>("tadimlik_goruntulendi", {
|
||||||
kova: siraKovasi(sira),
|
kova: siraKovasi(sira),
|
||||||
});
|
});
|
||||||
@@ -108,7 +115,9 @@ export function TadimlikSatiri({
|
|||||||
const seri = raporSiraSerisi(p.siraGecmisi, p.ilkYil);
|
const seri = raporSiraSerisi(p.siraGecmisi, p.ilkYil);
|
||||||
const taban = p.efektifSira ?? programEtkinSira(seri);
|
const taban = p.efektifSira ?? programEtkinSira(seri);
|
||||||
const devlet = p.unitur === "DEVLET";
|
const devlet = p.unitur === "DEVLET";
|
||||||
const girisUrl = `/giris?callback=${encodeURIComponent(sonucHref())}`;
|
// Giriş dönüşü kullanıcıyı /sonuc'a geri bırakmaz: callback doğrudan
|
||||||
|
// üretimin koştuğu /listem'e iner, liste ek tık olmadan orada başlar.
|
||||||
|
const girisUrl = `/giris?callback=${encodeURIComponent(listemUretHref("tadimlik"))}`;
|
||||||
|
|
||||||
return (
|
return (
|
||||||
// first:mt-0 — /sonuc'ta manuel liste boşken ManuelHarita null döndüğü
|
// first:mt-0 — /sonuc'ta manuel liste boşken ManuelHarita null döndüğü
|
||||||
|
|||||||
@@ -29,6 +29,8 @@ const IZINLI_KAYNAKLAR = new Set([
|
|||||||
"giris_donusu",
|
"giris_donusu",
|
||||||
"bos_durum",
|
"bos_durum",
|
||||||
"odeme_sonrasi",
|
"odeme_sonrasi",
|
||||||
|
// /sonuc'taki girişsiz tadımlık CTA'sı (tadimlik-satiri.tsx).
|
||||||
|
"tadimlik",
|
||||||
// /sonuc'ta ?sihirbaz=1 ile otomatik başlayan üretimin gerçek yüzeyleri.
|
// /sonuc'ta ?sihirbaz=1 ile otomatik başlayan üretimin gerçek yüzeyleri.
|
||||||
// Eskiden hepsi "giris_donusu" sayılıyordu (güvenlik denetimi G3).
|
// Eskiden hepsi "giris_donusu" sayılıyordu (güvenlik denetimi G3).
|
||||||
"hero",
|
"hero",
|
||||||
|
|||||||
Reference in New Issue
Block a user