<?php
declare(strict_types=1);

require_once __DIR__ . '/../config/database.php';
require_once __DIR__ . '/../app/Services/XPService.php';

header('Content-Type: application/json; charset=utf-8');

try {
    $db = getDbConnection();
    $service = new XPService($db);

    // Dữ liệu thử của dự án hiện tại.
    // Sau khi test xong có thể xóa file này.
    $result = $service->award(
        studentId: 1,
        academicYearId: 1,
        bookId: null,
        unitId: null,
        lessonId: null,
        activityId: null,
        activityType: 'flashcards',
        xp: 10,
        xpSource: 'flashcards',
        note: 'Kiểm tra hệ thống XP'
    );

    echo json_encode($result, JSON_UNESCAPED_UNICODE | JSON_PRETTY_PRINT);
} catch (Throwable $e) {
    http_response_code(500);

    echo json_encode([
        'success' => false,
        'error' => $e->getMessage(),
        'file' => $e->getFile(),
        'line' => $e->getLine(),
    ], JSON_UNESCAPED_UNICODE | JSON_PRETTY_PRINT);
}
