<?php
// Shared i18n helper for public pages
if (session_status() === PHP_SESSION_NONE) session_start();

$supportedLangs = ['tr','en'];
// Prefer GET -> POST -> SESSION -> COOKIE -> default 'tr'
$lang = $_GET['lang'] ?? $_POST['lang'] ?? $_SESSION['lang'] ?? ($_COOKIE['lang'] ?? 'tr');
$lang = in_array($lang, $supportedLangs, true) ? $lang : 'tr';
$_SESSION['lang'] = $lang;
setcookie('lang', $lang, time() + 60*60*24*365, "/");

$T = [
  'tr' => [
    'title' => 'Nephro Link - Giriş',
    'brand' => 'Nephro Link',
    'subtitle' => 'Yetkili erişim ve hasta seans arşivi.',
    'login_title' => 'Giriş Yap',
    'login_sub' => 'Hesabınıza giriş yapın',
    'staff_user' => 'Kullanıcı adı veya e-posta',
    'staff_pass' => 'Şifre',
    'btn_login' => 'Giriş Yap',
    'register_title' => 'Kayıt Ol',
    'register_sub' => 'Hesap oluşturun ve erişim kazanın',
    'btn_register' => 'Hesap Oluştur',
    'have_account' => 'Zaten hesabınız var mı? Giriş yapın',
    'no_account' => 'Hesabınız yok mu? Kayıt olun',
    'invalid_csrf' => 'Geçersiz güvenlik jetonu. Lütfen sayfayı yenileyip tekrar deneyin.',
    'reg_submitted' => 'Kayıt gönderildi; bir yönetici onaylayınca hesabınız aktif olacaktır.',
    'captcha_label' => 'Güvenlik Doğrulaması',
    'captcha_hint' => 'Sonucu yazın',
    'captcha_err' => 'Güvenlik doğrulaması hatalı. Lütfen tekrar deneyin.',
    'login_err' => 'Kullanıcı adı veya şifre hatalı.',
    'inactive_err' => 'Hesap etkin değil. Yönetici onayı bekleniyor.',
    'remember' => 'Beni hatırla',
    'forgot' => 'Şifremi unuttum',
    // Staff / patient
    'tab_staff' => 'Personel Girişi',
    'tab_patient' => 'Seans Arşivi',
    'patient_tc' => 'TC Kimlik No',
    'patient_birth' => 'Doğum Tarihi',
    'patient_enter' => 'Portal’a Gir',
    'patient_no_table' => 'Hasta doğrulama altyapısı hazır. (Hasta tablosu/alanları projeye bağlanacak.)',
    'patient_err' => 'Bilgiler doğrulanamadı.',
    'log_info' => 'Güvenlik: Erişim verileri loglanır.',
    'log_toast' => 'Log record: erişim verileri loglandı.',
    'choose_lang' => 'Dil',
  ],
  'en' => [
    'title' => 'Nephro Link - Sign In',
    'brand' => 'Nephro Link',
    'subtitle' => 'Authorized access and patient session archive.',
    'login_title' => 'Sign in',
    'login_sub' => 'Sign in to your account',
    'staff_user' => 'Username or email',
    'staff_pass' => 'Password',
    'btn_login' => 'Sign in',
    'register_title' => 'Create account',
    'register_sub' => 'Create your account and get access',
    'btn_register' => 'Create account',
    'have_account' => 'Already have an account? Sign in',
    'no_account' => "Don't have an account? Create one",
    'invalid_csrf' => 'Invalid security token. Please refresh and try again.',
    'reg_submitted' => 'Registration submitted; an administrator will approve your account.',
    'captcha_label' => 'Security Check',
    'captcha_hint' => 'Enter result',
    'captcha_err' => 'Security check failed. Please try again.',
    'login_err' => 'Invalid username or password.',
    'inactive_err' => 'Account not active. Admin approval required.',
    'remember' => 'Remember me',
    'forgot' => 'Forgot password',
    // Staff / patient
    'tab_staff' => 'Staff Login',
    'tab_patient' => 'Session Archive',
    'patient_tc' => 'National ID',
    'patient_birth' => 'Date of Birth',
    'patient_enter' => 'Enter Portal',
    'patient_no_table' => 'Patient verification UI is ready. (Connect patient table/fields in project.)',
    'patient_err' => 'Verification failed.',
    'log_info' => 'Security: Access metadata is logged.',
    'log_toast' => 'Log record: access metadata captured.',
    'choose_lang' => 'Language',
  ],

];

function t(string $key): string {
  global $T, $lang;
  return htmlspecialchars($T[$lang][$key] ?? $key, ENT_QUOTES, 'UTF-8');
}
