diff --git a/src/features/katalog/components/universite-icerik.tsx b/src/features/katalog/components/universite-icerik.tsx index 31778ab..e3d5633 100644 --- a/src/features/katalog/components/universite-icerik.tsx +++ b/src/features/katalog/components/universite-icerik.tsx @@ -46,16 +46,24 @@ const sayi = (n: number) => n.toLocaleString("tr-TR"); // Ham `unitur` değerlerinin ekranda görünen karşılığı. `trBaslikDuzeni` // tr-TR küçültmesi yaptığı için ("I" → "ı") ham değerlere uygulanamaz: // "YURTDISI KAMU" → "Yurtdısı Kamu" gibi Türkçede olmayan kelimeler çıkıyor. -// Haritada olmayan (ileride eklenecek) bir değer için `trBaslikDuzeni` -// yedek olarak kalır. Yalnızca bu karttaki gösterim içindir — `trBaslikDuzeni` -// il adlarında doğru çalışıyor, ona dokunulmaz. -const UNITUR_ETIKET: Record = { - DEVLET: "Devlet", - VAKIF: "Vakıf", - "VAKIF MYO": "Vakıf MYO", - KKTC: "KKTC", - "YURTDISI KAMU": "Yurt dışı (kamu)", - "YURTDISI VAKIF": "Yurt dışı (vakıf)", +// İki biçim tek kaynakta durur, çünkü aynı bilgi iki yerde geçiyor: +// `kart` = "Tür" kartındaki kısa etiket (yalnız URAP'ta olmayan üniversitede), +// `cumle` = özet paragrafın ilk virgülündeki öbek (her üniversitede). +// `cumle` cümle ortasında okunacak biçimde küçük harfle başlar; KKTC gibi +// kısaltmalar büyük kalır. +const UNITUR_ETIKET: Record = { + DEVLET: { kart: "Devlet", cumle: "devlet üniversitesi" }, + VAKIF: { kart: "Vakıf", cumle: "vakıf üniversitesi" }, + "VAKIF MYO": { kart: "Vakıf MYO", cumle: "vakıf meslek yüksekokulu" }, + KKTC: { kart: "KKTC", cumle: "KKTC üniversitesi" }, + "YURTDISI KAMU": { + kart: "Yurt dışı (kamu)", + cumle: "yurt dışında bir kamu üniversitesi", + }, + "YURTDISI VAKIF": { + kart: "Yurt dışı (vakıf)", + cumle: "yurt dışında bir vakıf üniversitesi", + }, }; export function uniToplamSayfa(programSayisi: number): number { @@ -227,6 +235,14 @@ export function UniversiteIcerik({ } const ilkSayfa = sayfa === 1; + // Devlet/vakıf bilgisi sayfada başka hiçbir yerde geçmiyor (URAP'ta olan + // üniversitede "Tür" kartının yerini URAP sırası aldı), o yüzden özet + // paragrafın ilk virgülünde duruyor. Haritada olmayan ya da NULL bir + // `unitur`'da öbek hiç yazılmaz: cümlede kopuk virgül/boşluk kalmaz ve + // ham DB değeri cümlenin içine sızmaz. + const turCumlesi = uni.unitur + ? UNITUR_ETIKET[uni.unitur]?.cumle + : undefined; const buYol = ilkSayfa ? `/universite/${slug}` : `/universite/${slug}/sayfa/${sayfa}`; @@ -324,8 +340,9 @@ export function UniversiteIcerik({ <>

{uni.ad} - {uni.il ? ` (${trBaslikDuzeni(uni.il)})` : ""}, {SON_YIL} YKS - yerleştirme sonuçlarına göre{" "} + {uni.il ? ` (${trBaslikDuzeni(uni.il)})` : ""} + {turCumlesi ? `, ${turCumlesi};` : ","} {SON_YIL} YKS yerleştirme + sonuçlarına göre{" "} {sayi(uni.programSayisi)} programda öğrenci aldı {uni.fakulteSayisi > 1 ? `; programlar ${sayi(uni.fakulteSayisi)} fakülte/yüksekokula dağılıyor` @@ -394,7 +411,7 @@ export function UniversiteIcerik({

{uni.unitur - ? (UNITUR_ETIKET[uni.unitur] ?? + ? (UNITUR_ETIKET[uni.unitur]?.kart ?? trBaslikDuzeni(uni.unitur)) : "—"}