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

// التحقق من تسجيل الدخول وصلاحيات المدير
requireLogin();
requirePermission('admin');

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

$participantId = (int)$_GET['id'];
$eventId = (int)$_GET['event_id'];

// الحصول على بيانات النشاط
$query = "SELECT * FROM events WHERE id = :id";
$event = fetchOne($query, [':id' => $eventId]);

// التحقق من وجود النشاط
if (!$event) {
    setAlert('danger', 'النشاط غير موجود');
    header('Location: ' . SITE_URL . '/events/index.php');
    exit;
}

// الحصول على بيانات المشارك
$query = "SELECT ep.*, m.first_name, m.last_name 
          FROM event_participants ep 
          JOIN members m ON ep.member_id = m.id 
          WHERE ep.id = :id AND ep.event_id = :event_id";
$participant = fetchOne($query, [':id' => $participantId, ':event_id' => $eventId]);

// التحقق من وجود المشارك
if (!$participant) {
    setAlert('danger', 'المشارك غير موجود');
    header('Location: ' . SITE_URL . '/events/participants.php?event_id=' . $eventId);
    exit;
}

// معالجة نموذج التعديل
$errors = [];

if ($_SERVER['REQUEST_METHOD'] === 'POST') {
    // التحقق من البيانات المرسلة
    $registrationDate = isset($_POST['registration_date']) ? sanitizeInput($_POST['registration_date']) : '';
    $notes = isset($_POST['notes']) ? sanitizeInput($_POST['notes']) : '';
    
    if (empty($registrationDate)) {
        $errors[] = 'تاريخ التسجيل مطلوب';
    }
    
    // إذا لم تكن هناك أخطاء، قم بتحديث بيانات المشارك
    if (empty($errors)) {
        $query = "UPDATE event_participants 
                  SET registration_date = :registration_date, notes = :notes 
                  WHERE id = :id AND event_id = :event_id";
        $params = [
            ':id' => $participantId,
            ':event_id' => $eventId,
            ':registration_date' => $registrationDate,
            ':notes' => $notes
        ];
        
        $result = execute($query, $params);
        
        if ($result) {
            setAlert('success', 'تم تحديث بيانات المشارك بنجاح');
            header('Location: ' . SITE_URL . '/events/participants.php?event_id=' . $eventId);
            exit;
        } else {
            $errors[] = 'حدث خطأ أثناء تحديث بيانات المشارك';
        }
    }
}

// عنوان الصفحة
$pageTitle = 'تعديل بيانات المشارك: ' . $participant['first_name'] . ' ' . $participant['last_name'];

// تضمين ملف الهيدر
include '../includes/header.php';
?>

<div class="d-flex justify-content-between align-items-center mb-4">
    <h1 class="h3 mb-0"><i class="fas fa-user-edit me-2"></i> تعديل بيانات المشارك</h1>
    <div>
        <a href="<?php echo SITE_URL; ?>/events/participants.php?event_id=<?php echo $eventId; ?>" class="btn btn-secondary">
            <i class="fas fa-arrow-right"></i> العودة إلى قائمة المشاركين
        </a>
    </div>
</div>

<div class="card mb-4">
    <div class="card-header bg-light">
        <h5 class="mb-0">تعديل بيانات المشارك في النشاط: <?php echo $event['title']; ?></h5>
    </div>
    <div class="card-body">
        <?php if (!empty($errors)): ?>
            <div class="alert alert-danger">
                <ul class="mb-0">
                    <?php foreach ($errors as $error): ?>
                        <li><?php echo $error; ?></li>
                    <?php endforeach; ?>
                </ul>
            </div>
        <?php endif; ?>
        
        <form method="post" action="">
            <div class="row">
                <div class="col-md-6 mb-3">
                    <label for="member_name" class="form-label">اسم المشارك</label>
                    <input type="text" class="form-control" id="member_name" value="<?php echo $participant['first_name'] . ' ' . $participant['last_name']; ?>" readonly>
                </div>
                <div class="col-md-6 mb-3">
                    <label for="registration_date" class="form-label">تاريخ التسجيل <span class="text-danger">*</span></label>
                    <input type="date" class="form-control" id="registration_date" name="registration_date" value="<?php echo $participant['registration_date']; ?>" required>
                </div>
            </div>
            
            <div class="mb-3">
                <label for="notes" class="form-label">ملاحظات</label>
                <textarea class="form-control" id="notes" name="notes" rows="3"><?php echo $participant['notes']; ?></textarea>
            </div>
            
            <div class="alert alert-info mb-4">
                <div class="d-flex">
                    <div class="me-3">
                        <i class="fas fa-info-circle fa-2x"></i>
                    </div>
                    <div>
                        <h5 class="alert-heading">معلومات النشاط</h5>
                        <p class="mb-0">
                            <strong>عنوان النشاط:</strong> <?php echo $event['title']; ?><br>
                            <strong>تاريخ النشاط:</strong> <?php echo formatDate($event['start_date']); ?>
                            <?php if (!empty($event['end_date']) && $event['end_date'] != $event['start_date']): ?>
                                - <?php echo formatDate($event['end_date']); ?>
                            <?php endif; ?>
                        </p>
                    </div>
                </div>
            </div>
            
            <div class="d-grid gap-2 d-md-flex justify-content-md-end">
                <a href="<?php echo SITE_URL; ?>/events/participants.php?event_id=<?php echo $eventId; ?>" class="btn btn-secondary me-md-2">إلغاء</a>
                <button type="submit" class="btn btn-primary">حفظ التغييرات</button>
            </div>
        </form>
    </div>
</div>

<?php
// تضمين ملف الفوتر
include '../includes/footer.php';
?>
