<?php
require_once '../config.php';

// التحقق من تسجيل الدخول
requireLogin();

// التحقق من وجود معرف المنخرط
if (!isset($_GET['id']) || empty($_GET['id'])) {
    setAlert('danger', 'معرف المنخرط غير صالح.');
    header('Location: ' . SITE_URL . '/members/index.php');
    exit;
}

$memberId = (int)$_GET['id'];

// التحقق من وجود المنخرط
$member = fetchOne("SELECT * FROM members WHERE id = ?", [$memberId]);
if (!$member) {
    setAlert('danger', 'المنخرط غير موجود.');
    header('Location: ' . SITE_URL . '/members/index.php');
    exit;
}

try {
    // بدء المعاملة
    $db->beginTransaction();
    
    // حذف الاشتراكات المرتبطة بالمنخرط
    delete("DELETE FROM subscriptions WHERE member_id = ?", [$memberId]);
    
    // حذف سجلات الحضور المرتبطة بالمنخرط
    delete("DELETE FROM attendance WHERE member_id = ?", [$memberId]);
    
    // حذف المنخرط
    delete("DELETE FROM members WHERE id = ?", [$memberId]);
    
    // تأكيد المعاملة
    $db->commit();
    
    // حذف صورة المنخرط إذا كانت موجودة
    if (!empty($member['photo']) && file_exists('../uploads/members/' . $member['photo'])) {
        unlink('../uploads/members/' . $member['photo']);
    }
    
    setAlert('success', 'تم حذف المنخرط بنجاح.');
} catch (Exception $e) {
    // التراجع عن المعاملة في حالة حدوث خطأ
    $db->rollBack();
    setAlert('danger', 'حدث خطأ أثناء حذف المنخرط: ' . $e->getMessage());
}

// إعادة التوجيه إلى صفحة المنخرطين
header('Location: ' . SITE_URL . '/members/index.php');
exit;
?>
