<?php
// Migration script to create academic_calendar table
require_once __DIR__ . '/../config/database.php';

try {
    // Create academic_calendar table
    $sql = "CREATE TABLE IF NOT EXISTS academic_calendar (
        id INT AUTO_INCREMENT PRIMARY KEY,
        title VARCHAR(200) NOT NULL,
        description TEXT NULL,
        event_date DATE NOT NULL,
        event_type ENUM('holiday', 'exam', 'event', 'other') DEFAULT 'other',
        is_recurring BOOLEAN DEFAULT FALSE,
        recurring_pattern VARCHAR(50) NULL,
        status ENUM('active','inactive') DEFAULT 'active',
        created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
        updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4";
    
    $pdo->exec($sql);
    
    echo "Academic calendar table created or already exists.\n";
    
    // Add some sample data if table is empty
    $stmt = $pdo->query("SELECT COUNT(*) as count FROM academic_calendar");
    $result = $stmt->fetch();
    
    if ($result['count'] == 0) {
        // Insert sample holidays
        $sample_events = [
            ['ঈদ উল আযহা', 'ঈদ উল আযহা ছুটি', date('Y') . '-06-29', 'holiday', 1, 'প্রতি বছর', 'active'],
            ['দুর্গা পূজা', 'দুর্গা পূজা ছুটি', date('Y') . '-10-15', 'holiday', 1, 'প্রতি বছর', 'active'],
            ['বড়দিন', 'খ্রিস্টান বছরবার্ষিক ছুটি', date('Y') . '-12-25', 'holiday', 1, 'প্রতি বছর', 'active'],
            ['শিক্ষা সপ্তাহ', 'জাতীয় শিক্ষা সপ্তাহ', date('Y') . '-11-14', 'event', 1, 'প্রতি বছর', 'active'],
            ['শিক্ষক দিবস', 'জাতীয় শিক্ষক দিবস', date('Y') . '-05-05', 'event', 1, 'প্রতি বছর', 'active']
        ];
        
        foreach ($sample_events as $event) {
            $stmt = $pdo->prepare("INSERT INTO academic_calendar (title, description, event_date, event_type, is_recurring, recurring_pattern, status) VALUES (?, ?, ?, ?, ?, ?, ?)");
            $stmt->execute($event);
        }
        
        echo "Sample academic calendar events inserted.\n";
    }
} catch (PDOException $e) {
    echo "Error creating table: " . $e->getMessage() . "\n";
}
?>