<?php
declare(strict_types=1);
require_once dirname(__DIR__) . '/core/bootstrap.php';

header('Cache-Control: private, no-store, max-age=0');
header('Pragma: no-cache');

if (admin_user()) redirect('/admin/index.php');

$error = '';
$identifier = '';
$rateKey = 'admin-login-v3:' . client_ip();

if (request_is_post()) {
    verify_csrf();
    $identifier = trim((string) ($_POST['identifier'] ?? $_POST['email'] ?? ''));
    $password = (string) ($_POST['password'] ?? '');

    if (!rate_limit_allowed($rateKey, 10, 900)) {
        $error = 'Çok fazla başarısız deneme. Lütfen 15 dakika sonra tekrar deneyin.';
    } elseif (admin_login($identifier, $password)) {
        rate_limit_clear($rateKey);
        $to = $_SESSION['intended'] ?? url('/admin/index.php');
        unset($_SESSION['intended']);

        // Redirectten önce oturumu kesin olarak diske yaz.
        session_write_close();
        redirect($to);
    } else {
        rate_limit_hit($rateKey, 900);
        $error = 'E-posta, kullanıcı adı veya şifre hatalı.';
    }
}
?>
<!doctype html>
<html lang="tr">
<head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width,initial-scale=1">
    <title>Yönetim Girişi</title>
    <link rel="stylesheet" href="<?=asset('css/admin.css')?>">
</head>
<body class="login-page">
<main class="login-card">
    <img src="<?=asset('img/logo.svg')?>" alt="Nekrut Wellness">
    <h1>Yönetim Girişi</h1>
    <?php if (isset($_GET['installed'])): ?>
        <div class="flash success">Kurulum tamamlandı. Oluşturduğunuz yönetici hesabıyla giriş yapın.</div>
    <?php endif; ?>
    <?php if ($error): ?><div class="flash error"><?=e($error)?></div><?php endif; ?>
    <form method="post">
        <?=csrf_field()?>
        <label>E-posta veya kullanıcı adı</label>
        <input type="text" name="identifier" value="<?=e($identifier)?>" autocomplete="username" required autofocus>
        <label>Şifre</label>
        <input type="password" name="password" autocomplete="current-password" required>
        <button class="button" type="submit">Giriş Yap</button>
    </form>
</main>
</body>
</html>
