diff --git a/src/features/liste/components/program-ekle-butonu.tsx b/src/features/liste/components/program-ekle-butonu.tsx index 46a077e..6a1a30d 100644 --- a/src/features/liste/components/program-ekle-butonu.tsx +++ b/src/features/liste/components/program-ekle-butonu.tsx @@ -52,8 +52,11 @@ export function ProgramEkleButonu({ toast.info(`Listen ${MANUEL_LISTE_MAX} tercihe ulaştı.`); } else if (sonuc.zatenVar) { toast.info("Bu program zaten seçtiklerinde."); - } else { - olay("program_eklendi", { kaynak }); + } else if (sonuc.eklendi) { + // Yalnız gerçek eklemede: profilsiz + kapıyı açar (kapiAcildi) ve + // program o an listeye girmez — o yolun olayı kapı tamamlanınca + // profilTamamlandi içinden {yol: "kapi"} ile atılır. + olay("program_eklendi", { kaynak, yol: "dogrudan" }); } } diff --git a/src/features/liste/hooks/use-tercih-profili.ts b/src/features/liste/hooks/use-tercih-profili.ts index d3e5a3f..6b12716 100644 --- a/src/features/liste/hooks/use-tercih-profili.ts +++ b/src/features/liste/hooks/use-tercih-profili.ts @@ -5,6 +5,7 @@ import { useSyncExternalStore } from "react"; import type { Program } from "@/types/yokatlas"; +import { olay } from "@/lib/analitik"; import { PROFIL_DEGISTI_EVENT, sonucHref, type TercihProfili } from "@/features/sihirbaz/sihirbaz-sabitler"; import { tercihProfiliOku, tercihProfiliTamamlandiMi } from "@/features/sihirbaz/sihirbaz-profil"; import { @@ -250,7 +251,14 @@ export function profilTamamlandi( const bekleyen = durum.bekleyen; const hedef = durum.bekleyenHedef; if (bekleyen) { - ekle(programdanManuelTercih(bekleyen.program, profil.sira, bekleyen.kaynak)); + const eklendi = ekle( + programdanManuelTercih(bekleyen.program, profil.sira, bekleyen.kaynak), + ); + // Kapıdan geçen +: program ancak şimdi listeye girdi. Butondaki + // {yol: "dogrudan"} atışının eşi; liste doluysa/zaten varsa atılmaz. + if (eklendi) { + olay("program_eklendi", { kaynak: bekleyen.kaynak, yol: "kapi" }); + } } durum = { ...durum, diff --git a/src/lib/analitik.ts b/src/lib/analitik.ts index b7dedb5..604d74e 100644 --- a/src/lib/analitik.ts +++ b/src/lib/analitik.ts @@ -20,6 +20,9 @@ export type OlayAdi = | "liste_olusturuldu" | "liste_guncellendi" | "liste_revize" + // Seri kırılması: bu düzeltmenin canlıya çıktığı tarihten önce = + + // tıklaması (kapı açılsa da atılıyordu), sonrası = gerçek ekleme + // ({yol: "dogrudan" | "kapi"}); seriler karşılaştırılamaz. | "program_eklendi" | "netler_goruntulendi" | "danisman_sorusu"