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

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

// التحقق من الصلاحيات
requirePermission('admin');

// حذف الجداول القديمة وإنشاء الجداول الجديدة
$queries = [
    // حذف الجداول القديمة إذا كانت موجودة
    "DROP TABLE IF EXISTS event_results",
    "DROP TABLE IF EXISTS event_participants",
    "DROP TABLE IF EXISTS events",
    
    // إنشاء جدول الأنشطة والفعاليات الجديد
    "CREATE TABLE IF NOT EXISTS events (
        id INTEGER PRIMARY KEY AUTOINCREMENT,
        title TEXT NOT NULL,
        description TEXT,
        location TEXT,
        start_date TEXT NOT NULL,
        end_date TEXT,
        start_time TEXT,
        end_time TEXT,
        category_id INTEGER,
        max_participants INTEGER,
        registration_required INTEGER DEFAULT 0,
        registration_deadline TEXT,
        status TEXT DEFAULT 'upcoming',
        image TEXT,
        created_by INTEGER,
        created_at TEXT NOT NULL,
        updated_at TEXT,
        FOREIGN KEY (category_id) REFERENCES categories(id),
        FOREIGN KEY (created_by) REFERENCES users(id)
    )",
    
    // إنشاء جدول المشاركين في الأنشطة
    "CREATE TABLE IF NOT EXISTS event_participants (
        id INTEGER PRIMARY KEY AUTOINCREMENT,
        event_id INTEGER NOT NULL,
        member_id INTEGER NOT NULL,
        registration_date TEXT NOT NULL,
        status TEXT DEFAULT 'registered',
        attendance INTEGER DEFAULT 0,
        notes TEXT,
        created_at TEXT DEFAULT CURRENT_TIMESTAMP,
        updated_at TEXT,
        FOREIGN KEY (event_id) REFERENCES events(id),
        FOREIGN KEY (member_id) REFERENCES members(id)
    )",
    
    // إنشاء جدول نتائج الأنشطة والفعاليات
    "CREATE TABLE IF NOT EXISTS event_results (
        id INTEGER PRIMARY KEY AUTOINCREMENT,
        event_id INTEGER NOT NULL,
        title TEXT NOT NULL,
        description TEXT,
        result_date TEXT NOT NULL,
        attachment TEXT,
        created_by INTEGER,
        created_at TEXT NOT NULL,
        updated_at TEXT,
        FOREIGN KEY (event_id) REFERENCES events(id),
        FOREIGN KEY (created_by) REFERENCES users(id)
    )"
];

// تنفيذ الاستعلامات
$success = true;
$errorMessages = [];

foreach ($queries as $query) {
    try {
        $result = executeQuery($query);
        if (!$result) {
            $success = false;
            $errorMessages[] = "فشل تنفيذ الاستعلام: " . $query;
        }
    } catch (Exception $e) {
        $success = false;
        $errorMessages[] = "خطأ: " . $e->getMessage() . " في الاستعلام: " . $query;
    }
}

// عنوان الصفحة
$pageTitle = 'تحديث هيكل قاعدة بيانات الأنشطة';

// تضمين ملف الهيدر
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-database me-2"></i> تحديث هيكل قاعدة بيانات الأنشطة</h1>
    <a href="<?php echo SITE_URL; ?>/events/index.php" class="btn btn-secondary">
        <i class="fas fa-arrow-right"></i> العودة إلى الأنشطة
    </a>
</div>

<div class="card">
    <div class="card-body">
        <?php if ($success): ?>
            <div class="alert alert-success">
                <i class="fas fa-check-circle me-2"></i> تم تحديث هيكل قاعدة البيانات بنجاح.
            </div>
            <p>تم حذف الجداول القديمة وإنشاء الجداول الجديدة بالهيكل المطلوب.</p>
            <p>يمكنك الآن استخدام نظام إدارة الأنشطة والفعاليات.</p>
        <?php else: ?>
            <div class="alert alert-danger">
                <i class="fas fa-exclamation-circle me-2"></i> حدثت أخطاء أثناء تحديث هيكل قاعدة البيانات.
            </div>
            <ul class="text-danger">
                <?php foreach ($errorMessages as $error): ?>
                    <li><?php echo $error; ?></li>
                <?php endforeach; ?>
            </ul>
        <?php endif; ?>
    </div>
</div>

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