merge(funnel/listem-girisi): fix(giris): callback yalnız better-auth'un kabul ettiği yollarda takılır

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
bilalgursen
2026-09-22 01:38:36 +03:00
4 changed files with 104 additions and 19 deletions

View File

@@ -4,12 +4,20 @@ import Link from "next/link";
import { ArrowRight } from "lucide-react";
import { Button } from "@/components/ui/button";
import { PagePixelDivider } from "@/components/pixel-decor";
import { useTercihProfili } from "@/features/liste/hooks/use-tercih-profili";
import {
profilToplamaAc,
useTercihProfili,
} from "@/features/liste/hooks/use-tercih-profili";
// Her iki dalın butonu da aynı CTA: sınıf seti tek yerde dursun.
const CTA_SINIF = "mt-6 cursor-pointer bg-orange-500 text-white hover:bg-orange-600";
/**
* /listem boş hâlinin metni + CTA'sı: seçimleri zaten hazır olan adayı
* /sonuc üzerinden dolaştırmadan doğrudan üretime (?uret=1) alır; profil
* yoksa ana sayfadaki sıralama formuna yönlendirir.
* yoksa kullanıcıyı ana sayfaya atmadan tercih kapısını **burada** açar.
* Kapı bitince `profilTamamlandi` "sihirbaz" hedefini /sonuc?sihirbaz=1'e
* çevirir, oradan /listem?uret=1'e dönülür — ayrı bir dal yok.
*/
export function ListemBosCta() {
const profil = useTercihProfili();
@@ -22,16 +30,24 @@ export function ListemBosCta() {
: "Sıralamanı girip birkaç adımda 24 tercihlik risk analizli listeni kur; sonra burada görüntüleyip Yapay Zeka danışmanla üzerinde konuşabilirsin."}
</p>
<PagePixelDivider seed={67} className="mx-auto mt-6" />
<Button
asChild
size="lg"
className="mt-6 cursor-pointer bg-orange-500 text-white hover:bg-orange-600"
>
<Link href={profil ? "/listem?uret=1" : "/"}>
{profil ? "Yapay Zeka listeni kur" : "Sıralamanı gir, Yapay Zeka listeni kur"}
{profil ? (
<Button asChild size="lg" className={CTA_SINIF}>
<Link href="/listem?uret=1&kaynak=bos_durum">
Yapay Zeka listeni kur
<ArrowRight className="size-4" aria-hidden />
</Link>
</Button>
) : (
<Button
type="button"
size="lg"
className={CTA_SINIF}
onClick={() => profilToplamaAc("sihirbaz", true, "listem_bos")}
>
Sıralamanı gir, Yapay Zeka listeni kur
<ArrowRight className="size-4" aria-hidden />
</Link>
</Button>
</Button>
)}
</>
);
}