<?php
session_start();
require_once('../config/db.php');

// --- نظام جلب اللغة ---
$current_lang = $_SESSION['lang'] ?? 'ar';
$lang_file = "../languages/" . $current_lang . ".php";
$translations = file_exists($lang_file) ? include($lang_file) : [];

// 1. التحقق من الصلاحيات
if (!isset($_SESSION['user']) || $_SESSION['user']['role'] !== 'admin') {
    http_response_code(403);
    exit($translations['access_denied_title'] ?? 'غير مصرح لك');
}

if (isset($_GET['id'])) {
    $userId = $_GET['id'];

    try {
        $conn->beginTransaction();

        // 2. جلب بيانات اليوزر قبل حذفه لمعرفة اسمه ورتبته وحمايته
        $stmt = $conn->prepare("SELECT full_name, role, protected FROM users WHERE id = ?");
        $stmt->execute([$userId]);
        $user = $stmt->fetch(PDO::FETCH_ASSOC);

        if ($user && !$user['protected']) {
            
            // 3. إذا كان اليوزر "مدرس"، نقوم بحذفه من جدول المدرسين أولاً
            if ($user['role'] === 'teacher') {
                $delTeacher = $conn->prepare("DELETE FROM teachers WHERE name = ?");
                $delTeacher->execute([$user['full_name']]);
            }

            // 4. حذف اليوزر من جدول المستخدمين
            $delUser = $conn->prepare("DELETE FROM users WHERE id = ?");
            $delUser->execute([$userId]);

            $conn->commit();
            // نرسل كلمة success ليفهمها كود الـ JavaScript في صفحة القائمة
            echo "success";
        } else {
            // رسالة في حال كان الحساب محمياً
            throw new Exception($translations['error_protected_account'] ?? "الحساب محمي أو غير موجود");
        }

    } catch (Exception $e) {
        if ($conn->inTransaction()) {
            $conn->rollBack();
        }
        http_response_code(500);
        echo ($translations['error_occurred'] ?? "Error: ") . $e->getMessage();
    }
}