Update Saqel Platform: 2026-09-08 18:49:45
This commit is contained in:
@@ -78,20 +78,20 @@ class VideoController
|
||||
} else {
|
||||
$subjectName = trim((string)($request->getBody()['subject'] ?? $_POST['subject'] ?? ''));
|
||||
$gradeLevel = trim((string)($request->getBody()['grade_level'] ?? $_POST['grade_level'] ?? ''));
|
||||
// The production schema uses subjects.name (not name_ar/name_en).
|
||||
// Match the teacher's grade first; the course subject is retained
|
||||
// as the canonical database relation.
|
||||
$existingCourse = Database::selectOne(
|
||||
"SELECT c.id, c.teacher_id FROM courses c
|
||||
JOIN subjects s ON s.id = c.subject_id
|
||||
WHERE c.teacher_id = ? AND c.grade_level = ? AND (s.name_ar = ? OR s.name_en = ?)
|
||||
LIMIT 1",
|
||||
[$request->user_id, $gradeLevel, $subjectName, $subjectName]
|
||||
"SELECT id, teacher_id FROM courses WHERE teacher_id = ? AND grade_level = ? LIMIT 1",
|
||||
[$request->user_id, $gradeLevel]
|
||||
);
|
||||
if ($existingCourse) {
|
||||
$courseId = (int)$existingCourse['id'];
|
||||
$course = $existingCourse;
|
||||
} else {
|
||||
$subject = Database::selectOne(
|
||||
"SELECT id FROM subjects WHERE name_ar = ? OR name_en = ? ORDER BY id LIMIT 1",
|
||||
[$subjectName, $subjectName]
|
||||
"SELECT id FROM subjects WHERE name = ? ORDER BY id LIMIT 1",
|
||||
[$subjectName]
|
||||
) ?: Database::selectOne("SELECT id FROM subjects ORDER BY id LIMIT 1");
|
||||
if (!$subject) {
|
||||
$response->status(409)->json(['status' => 'error', 'message' => 'لا يوجد مبحث معرف لربط الفيديو به']);
|
||||
|
||||
Reference in New Issue
Block a user