Commit graph

21 commits

Author SHA1 Message Date
JakkrapartXD
7e8c8e2532 feat: fix quiz scoring to use Choice model correctness, add YouTube video support to lesson content, and include show_answers_after_completion in quiz data
Update quiz attempt detail scoring to determine correctness from Choice.is_correct instead of StudentAnswer.is_correct and calculate earned score based on correctness. Add YouTube video support to getLessonContent endpoint by checking LessonAttachment for YouTube videos (mime_type 'video/youtube') and building YouTube URLs from video IDs. Ad
2026-02-04 14:19:17 +07:00
JakkrapartXD
ff841c7638 feat: add search and filter capabilities to student and quiz endpoints, implement YouTube video support for lessons
Add search and status filter parameters to getEnrolledStudents endpoint to filter students by name/email/username and enrollment status. Add search and isPassed filter parameters to getQuizScores endpoint to filter quiz results by student details and pass status. Remove separate searchStudents endpoint as its functionality is now integrated into getEnrolledStudents. Add setYouTubeVideo endpoint to
2026-02-03 17:23:47 +07:00
JakkrapartXD
7749a39be7 feat: add enrolled student detail endpoint and reorder student endpoints
Add getEnrolledStudentDetail endpoint to retrieve individual student's lesson progress across all course chapters. Move searchStudents endpoint before getEnrolledStudentDetail to prevent route conflicts. Remove correct_choice_id and correct_choice_text from quiz attempt detail answers review. Fix selected_choice_id mapping to use choice_id from student answers.
2026-02-03 14:42:45 +07:00
JakkrapartXD
c07d847955 feat: add sort_order field to quiz attempt detail answers review
Add sort_order field to answers_review in QuizAttemptDetailData interface and include it in getQuizAttemptDetail response to maintain question ordering in quiz attempt reviews.
2026-02-03 11:59:18 +07:00
JakkrapartXD
48e8f56e22 feat: update instructor search to exclude self and existing course instructors, add email_verified_at to user responses
Update searchInstructors endpoint to accept courseId parameter and filter out the requesting instructor and instructors already assigned to the course. Add email_verified_at field to UserResponse type and include it in auth and user service responses.
2026-02-03 10:38:59 +07:00
JakkrapartXD
80d7372dfa feat: add instructor endpoints for student progress tracking and quiz score management
Add four new instructor endpoints: getEnrolledStudents to view all enrolled students with progress, getQuizScores to view quiz scores for all students in a lesson, getQuizAttemptDetail to view detailed quiz attempt for a specific student, and searchStudents to search enrolled students by name/email/username. Add getQuizAttempts endpoint for students to retrieve their own quiz attempt history. All endpoints include
2026-02-02 18:02:19 +07:00
JakkrapartXD
24c37df4ef refactor: reorder searchInstructors endpoint and fix role code to uppercase INSTRUCTOR, add lesson completion tracking on quiz pass 2026-01-29 16:39:33 +07:00
JakkrapartXD
0641b2547a refactor: simplify instructor search to query all instructors without course-specific filtering 2026-01-29 16:17:25 +07:00
JakkrapartXD
f4a12c686b feat: Implement instructor search and improve instructor management with email/username lookup and avatar presigned URLs. 2026-01-29 15:52:10 +07:00
JakkrapartXD
b303c50865 feat: add dedicated thumbnail upload endpoint for courses with old file cleanup and presigned URL generation. 2026-01-28 16:47:08 +07:00
JakkrapartXD
10821d093c feat: add presigned URL generation for course thumbnails across all course services. 2026-01-28 15:31:21 +07:00
JakkrapartXD
cf12ef965e feat: add thumbnail upload support to course creation endpoint with multipart form data handling. 2026-01-28 14:38:11 +07:00
JakkrapartXD
bbfb62093e feat: Introduce announcements service, integrate MinIO for lesson media with presigned URLs, and restrict editing of pending courses. 2026-01-26 15:15:46 +07:00
JakkrapartXD
5d6cab229f make admin approve api 2026-01-23 13:16:41 +07:00
JakkrapartXD
04e2da43c4 feat: Implement lesson creation with file uploads (video, attachments) and quiz data, integrating MinIO for storage. 2026-01-20 16:51:42 +07:00
JakkrapartXD
6bbbde062a feat: Implement chapter and lesson management with new services and types, and introduce Minio service. 2026-01-20 13:39:42 +07:00
JakkrapartXD
715d94fbf9 feat: Create course and automatically assign the creator as the primary instructor using a transaction. 2026-01-19 14:48:45 +07:00
JakkrapartXD
b5ca6b2e0f feat: Introduce API endpoints and refactor service methods for adding, removing, listing, and setting primary course instructors. 2026-01-16 17:52:36 +07:00
JakkrapartXD
2e536ad193 feat: Add instructor capabilities to update, delete, and submit courses for review. 2026-01-16 17:36:32 +07:00
JakkrapartXD
8a2ca592bc feat: Implement instructor-specific course management with dedicated controller, service, types, and validation. 2026-01-16 15:43:14 +07:00
JakkrapartXD
000de75dd1 feat: Implement instructor-specific course management and refactor course creation into dedicated modules. 2026-01-16 11:12:12 +07:00