<?php
session_start();
require_once('../config/db.php');

if (!isset($_SESSION['student_id'])) {
    http_response_code(403);
    exit('غير مصرح');
}

$student_id = $_SESSION['student_id'];
// تأكد أنك ترسل الـ ID الصحيح من الفورم
$enrollment_id = intval($_POST['enrollment_id'] ?? 0); 
$rating = intval($_POST['rating'] ?? 0);

if($enrollment_id <= 0 || $rating < 1 || $rating > 5){
    http_response_code(400);
    exit('قيمة غير صحيحة');
}

try {
    // استخدم ON DUPLICATE KEY UPDATE
    // هذا الكود يبحث عن (student_id + enrollment_id)
    // إذا وجدهما: يحدث التقييم. إذا لم يجدهما: ينشئ سجلاً جديداً.
    $sql = "INSERT INTO course_ratings (student_id, enrollment_id, rating, created_at) 
            VALUES (:sid, :eid, :rt, NOW()) 
            ON DUPLICATE KEY UPDATE rating = :rt2, created_at = NOW()";
            
    $stmt = $conn->prepare($sql);
    $success = $stmt->execute([
        ':sid' => $student_id,
        ':eid' => $enrollment_id,
        ':rt'  => $rating,
        ':rt2' => $rating
    ]);

    if($success) {
        echo "تم حفظ تقييمك بنجاح";
    }
} catch (PDOException $e) {
    http_response_code(500);
    // لغايات التصحيح فقط:
    // exit($e->getMessage()); 
    exit('خطأ في قاعدة البيانات');
}