<?php
/**
 * Admin Kategori Düzenleme
 * Konum: /magaza/admin/urunler/kategori_duzenle.php
 */

require_once '../../includes/db.php';
require_once '../../includes/functions.php';

adminCheck();

$mesaj = '';

if (!isset($_GET['id']) || !is_numeric($_GET['id'])) {
    header("Location: kategoriler.php");
    exit;
}
$id = (int)$_GET['id'];

// GÜNCELLEME İŞLEMİ
if ($_SERVER['REQUEST_METHOD'] == 'POST' && isset($_POST['kategori_guncelle'])) {
    $name = trim($_POST['name']);
    $parent_id = !empty($_POST['parent_id']) ? $_POST['parent_id'] : NULL;
    $status = (int)$_POST['status'];
    $slug = seoLink($name);

    if (empty($name)) {
        $mesaj = "<div class='alert alert-warning shadow-sm'>Kategori adı boş bırakılamaz.</div>";
    } else {
        // Kendi ID'si hariç aynı slug var mı kontrolü
        $check = $db->prepare("SELECT id FROM categories WHERE slug = ? AND id != ?");
        $check->execute([$slug, $id]);
        if ($check->rowCount() > 0) { $slug = $slug . '-' . time(); }

        $stmt = $db->prepare("UPDATE categories SET name = ?, slug = ?, parent_id = ?, status = ? WHERE id = ?");
        if ($stmt->execute([$name, $slug, $parent_id, $status, $id])) {
            $mesaj = "<div class='alert alert-success shadow-sm'><i class='bi bi-check-circle me-2'></i>Kategori başarıyla güncellendi!</div>";
        } else {
            $mesaj = "<div class='alert alert-danger shadow-sm'>Güncelleme sırasında bir hata oluştu.</div>";
        }
    }
}

// MEVCUT KATEGORİ VERİSİNİ ÇEK
$stmt = $db->prepare("SELECT * FROM categories WHERE id = ?");
$stmt->execute([$id]);
$kategori = $stmt->fetch();

if (!$kategori) die("<div class='alert alert-danger m-4'>Kategori bulunamadı.</div>");

// ÜST KATEGORİLERİ ÇEK (Kendisi hariç)
$anaKategoriler = $db->prepare("SELECT id, name FROM categories WHERE parent_id IS NULL AND id != ? ORDER BY name ASC");
$anaKategoriler->execute([$id]);
$anaListe = $anaKategoriler->fetchAll();

require_once '../header.php';
?>

<div class="row mb-4 align-items-center">
    <div class="col-6">
        <h2 class="fw-bold text-dark mb-0"><i class="bi bi-pencil-square text-warning me-2"></i>Kategori Düzenle</h2>
    </div>
    <div class="col-6 text-end">
        <a href="kategoriler.php" class="btn btn-outline-secondary shadow-sm fw-bold"><i class="bi bi-arrow-left me-1"></i> Geri Dön</a>
    </div>
</div>

<?= $mesaj; ?>

<div class="card shadow-sm border-0 col-lg-6">
    <div class="card-body p-4 text-dark">
        <form action="kategori_duzenle.php?id=<?= $id ?>" method="POST">
            <div class="mb-3">
                <label class="form-label fw-bold small text-muted text-uppercase">Kategori Adı</label>
                <input type="text" name="name" class="form-control border-2" value="<?= htmlspecialchars($kategori['name']) ?>" required>
            </div>
            
            <div class="mb-3">
                <label class="form-label fw-bold small text-muted text-uppercase">Üst Kategori</label>
                <select name="parent_id" class="form-select border-2">
                    <option value="">-- Bu Bir Ana Kategori Olsun --</option>
                    <?php foreach($anaListe as $ana): ?>
                        <option value="<?= $ana['id'] ?>" <?= $kategori['parent_id'] == $ana['id'] ? 'selected' : '' ?>><?= htmlspecialchars($ana['name']) ?></option>
                    <?php endforeach; ?>
                </select>
            </div>

            <div class="mb-4">
                <label class="form-label fw-bold small text-muted text-uppercase">Durum</label>
                <select name="status" class="form-select border-2">
                    <option value="1" <?= $kategori['status'] == 1 ? 'selected' : '' ?>>Aktif (Yayında)</option>
                    <option value="0" <?= $kategori['status'] == 0 ? 'selected' : '' ?>>Pasif (Gizli)</option>
                </select>
            </div>

            <button type="submit" name="kategori_guncelle" class="btn btn-primary w-100 fw-bold shadow">
                <i class="bi bi-save me-1"></i> Değişiklikleri Kaydet
            </button>
        </form>
    </div>
</div>

<?php require_once '../footer.php'; ?>