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

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

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

$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;
}

// معالجة حذف النتيجة
if (isset($_GET['action']) && $_GET['action'] === 'delete' && isset($_GET['result_id']) && !empty($_GET['result_id'])) {
    $resultId = (int)$_GET['result_id'];
    
    // الحصول على معلومات المرفق قبل الحذف
    $query = "SELECT attachment FROM event_results WHERE id = :id AND event_id = :event_id";
    $result = fetchOne($query, [':id' => $resultId, ':event_id' => $eventId]);
    
    // حذف النتيجة
    $query = "DELETE FROM event_results WHERE id = :id AND event_id = :event_id";
    $deleteResult = executeQuery($query, [':id' => $resultId, ':event_id' => $eventId]);
    
    if ($deleteResult) {
        // حذف المرفق إذا كان موجوداً
        if ($result && !empty($result['attachment'])) {
            $attachmentPath = '../uploads/events/results/' . $result['attachment'];
            if (file_exists($attachmentPath)) {
                unlink($attachmentPath);
            }
        }
        
        setAlert('success', 'تم حذف النتيجة بنجاح');
    } else {
        setAlert('danger', 'حدث خطأ أثناء حذف النتيجة');
    }
    
    // إعادة التوجيه لتجنب إعادة الحذف عند تحديث الصفحة
    header('Location: ' . SITE_URL . '/events/results.php?event_id=' . $eventId);
    exit;
}

// معالجة إضافة نتيجة جديدة
$errors = [];

if ($_SERVER['REQUEST_METHOD'] === 'POST') {
    // التحقق من البيانات المرسلة
    if (!isset($_POST['title']) || empty($_POST['title'])) {
        $errors[] = 'عنوان النتيجة مطلوب';
    }
    
    if (!isset($_POST['result_date']) || empty($_POST['result_date'])) {
        $errors[] = 'تاريخ النتيجة مطلوب';
    }
    
    $title = sanitizeInput($_POST['title']);
    $description = isset($_POST['description']) ? sanitizeInput($_POST['description']) : '';
    $resultDate = sanitizeInput($_POST['result_date']);
    
    // معالجة المرفق
    $attachment = '';
    if (isset($_FILES['attachment']) && $_FILES['attachment']['error'] === UPLOAD_ERR_OK) {
        $uploadDir = '../uploads/events/results/';
        
        // إنشاء المجلد إذا لم يكن موجوداً
        if (!file_exists($uploadDir)) {
            mkdir($uploadDir, 0777, true);
        }
        
        $fileExtension = pathinfo($_FILES['attachment']['name'], PATHINFO_EXTENSION);
        $newFileName = 'result_' . $eventId . '_' . time() . '.' . $fileExtension;
        $uploadPath = $uploadDir . $newFileName;
        
        // التحقق من نوع الملف
        $allowedExtensions = ['pdf', 'doc', 'docx', 'xls', 'xlsx', 'jpg', 'jpeg', 'png'];
        if (!in_array(strtolower($fileExtension), $allowedExtensions)) {
            $errors[] = 'نوع الملف غير مسموح به. الأنواع المسموح بها: ' . implode(', ', $allowedExtensions);
        } else {
            // نقل الملف
            if (move_uploaded_file($_FILES['attachment']['tmp_name'], $uploadPath)) {
                $attachment = $newFileName;
            } else {
                $errors[] = 'حدث خطأ أثناء رفع الملف';
            }
        }
    }
    
    // إذا لم تكن هناك أخطاء، قم بإضافة النتيجة
    if (empty($errors)) {
        $query = "INSERT INTO event_results (event_id, title, description, result_date, attachment, created_at) 
                  VALUES (:event_id, :title, :description, :result_date, :attachment, :created_at)";
        $params = [
            ':event_id' => $eventId,
            ':title' => $title,
            ':description' => $description,
            ':result_date' => $resultDate,
            ':attachment' => $attachment,
            ':created_at' => date('Y-m-d H:i:s')
        ];
        
        $result = executeQuery($query, $params);
        
        if ($result) {
            setAlert('success', 'تمت إضافة النتيجة بنجاح');
            header('Location: ' . SITE_URL . '/events/results.php?event_id=' . $eventId);
            exit;
        } else {
            $errors[] = 'حدث خطأ أثناء إضافة النتيجة';
        }
    }
}

// الحصول على قائمة النتائج
$query = "SELECT * FROM event_results WHERE event_id = :event_id ORDER BY result_date DESC";
$results = fetchAll($query, [':event_id' => $eventId]);

// عنوان الصفحة
$pageTitle = 'إدارة نتائج النشاط: ' . $event['title'];

// تضمين ملف الهيدر
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-trophy me-2"></i> نتائج النشاط: <?php echo $event['title']; ?></h1>
    <div>
        <a href="<?php echo SITE_URL; ?>/events/view.php?id=<?php echo $event['id']; ?>" class="btn btn-secondary">
            <i class="fas fa-arrow-right"></i> العودة إلى تفاصيل النشاط
        </a>
    </div>
</div>

<div class="row mb-4">
    <div class="col-md-12">
        <div class="card">
            <div class="card-header bg-light">
                <h5 class="mb-0"><i class="fas fa-plus-circle me-2"></i> إضافة نتيجة جديدة</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="" enctype="multipart/form-data">
                    <div class="row">
                        <div class="col-md-6 mb-3">
                            <label for="title" class="form-label">عنوان النتيجة <span class="text-danger">*</span></label>
                            <input type="text" class="form-control" id="title" name="title" required>
                        </div>
                        <div class="col-md-6 mb-3">
                            <label for="result_date" class="form-label">تاريخ النتيجة <span class="text-danger">*</span></label>
                            <input type="date" class="form-control" id="result_date" name="result_date" value="<?php echo date('Y-m-d'); ?>" required>
                        </div>
                    </div>
                    
                    <div class="mb-3">
                        <label for="description" class="form-label">وصف النتيجة</label>
                        <textarea class="form-control" id="description" name="description" rows="3"></textarea>
                    </div>
                    
                    <div class="mb-3">
                        <label for="attachment" class="form-label">مرفق (اختياري)</label>
                        <input type="file" class="form-control" id="attachment" name="attachment">
                        <div class="form-text">أنواع الملفات المسموح بها: PDF, DOC, DOCX, XLS, XLSX, JPG, JPEG, PNG</div>
                    </div>
                    
                    <div class="d-grid gap-2 d-md-flex justify-content-md-end">
                        <button type="submit" class="btn btn-primary">إضافة النتيجة</button>
                    </div>
                </form>
            </div>
        </div>
    </div>
</div>

<div class="card mb-4">
    <div class="card-header bg-light">
        <h5 class="mb-0"><i class="fas fa-list me-2"></i> قائمة النتائج (<?php echo count($results); ?>)</h5>
    </div>
    <div class="card-body">
        <?php if (count($results) > 0): ?>
            <div class="list-group">
                <?php foreach ($results as $result): ?>
                <div class="list-group-item">
                    <div class="d-flex w-100 justify-content-between">
                        <h5 class="mb-1"><?php echo $result['title']; ?></h5>
                        <small>
                            <a href="<?php echo SITE_URL; ?>/events/results.php?action=delete&result_id=<?php echo $result['id']; ?>&event_id=<?php echo $eventId; ?>" class="text-danger" onclick="return confirm('هل أنت متأكد من رغبتك في حذف هذه النتيجة؟')">
                                <i class="fas fa-trash"></i> حذف
                            </a>
                        </small>
                    </div>
                    <p class="mb-1"><?php echo nl2br($result['description']); ?></p>
                    <div class="d-flex justify-content-between align-items-center">
                        <small class="text-muted">
                            <i class="fas fa-calendar me-1"></i> <?php echo formatDate($result['result_date']); ?>
                        </small>
                        <?php if (!empty($result['attachment'])): ?>
                        <a href="<?php echo SITE_URL; ?>/uploads/events/results/<?php echo $result['attachment']; ?>" class="btn btn-sm btn-outline-primary" target="_blank">
                            <i class="fas fa-file-download me-1"></i> تنزيل المرفق
                        </a>
                        <?php endif; ?>
                    </div>
                </div>
                <?php endforeach; ?>
            </div>
        <?php else: ?>
            <div class="alert alert-info">
                <i class="fas fa-info-circle me-2"></i> لا توجد نتائج مسجلة لهذا النشاط حتى الآن.
            </div>
        <?php endif; ?>
    </div>
</div>

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