Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: SCORM Course Resume Functionality #1263

Open
wants to merge 7 commits into
base: develop
Choose a base branch
from

Conversation

FahidLatheef
Copy link
Contributor

This PR Includes

SCORM Progress

  • 2 new fields are added is_scorm_chapter and scorm_content to LMS Course Progress for SCORM Lessons.
  • Field scorm_content is updated whenever SCORM Data model cmi.suspend_data is triggered. Moreover, field status is upserted with value 'Partially Complete'.
  • Whenever the course is reloaded, scorm_content is set in both cmi.suspend_data and cmi.launch_data.
  • if the lesson is completed successfully, scorm_content field is emptied.

Style Changes

  • Changed height of SCORM iframe so that user don't have to scroll for SCORM courses

Closes #1262

Future TODOs

  • cmi.suspend_data can become long, we can compress the same for better storage performances.
  • Some SCORM courses uses cmi.core.lesson_location Data Model to track progress, we may use them for tracking progress
  • Option to configure whether SCORM Chapter should restart from scratch or from the final quiz if Student fails the final quiz.

Copy link

cypress bot commented Jan 21, 2025

lms    Run #1112

Run Properties:  status check passed Passed #1112  •  git commit 5be84954f0 ℹ️: Merge 39cc83c1b8946d4058b0bdc1e9fd2be079ee588e into cd8fb6eb3823405898cd7ab79b46...
Project lms
Branch Review feat/scorm-progress
Run status status check passed Passed #1112
Run duration 00m 30s
Commit git commit 5be84954f0 ℹ️: Merge 39cc83c1b8946d4058b0bdc1e9fd2be079ee588e into cd8fb6eb3823405898cd7ab79b46...
Committer Fahid Latheef A
View all properties for this run ↗︎

Test results
Tests that failed  Failures 0
Tests that were flaky  Flaky 0
Tests that did not run due to a developer annotating a test with .skip  Pending 0
Tests that did not run due to a failure in a mocha hook  Skipped 0
Tests that passed  Passing 1
⚠️ You've recorded test results over your free plan limit.
Upgrade your plan to view test results.
View all changes introduced in this branch ↗︎

…ng SCORM Data Model

feat: added is_scorm_chapter and scorm_content to track cmi.suspend_data for resuming scorm chapter
- Replaced already_completed with progress_already_exists variable
- Added scorm_details parameter to save_progress whitelisted function
- Added Separate logic for SCORM chapter progress in save_progress
…hether to allow retake of final quiz or Reset the whole Course)
@FahidLatheef FahidLatheef marked this pull request as ready for review January 22, 2025 10:28
@pateljannat
Copy link
Collaborator

@FahidLatheef can you please add a video showing how Partially Complete status is working in context to the changes made in this PR

@FahidLatheef FahidLatheef marked this pull request as draft February 17, 2025 09:15
@FahidLatheef
Copy link
Contributor Author

Converting this to Draft, I need to change statistics calculation based on LMS Course Progress

@FahidLatheef
Copy link
Contributor Author

@FahidLatheef can you please add a video showing how Partially Complete status is working in context to the changes made in this PR

SCORMProgress.mp4

@pateljannat

Other SCORM Caveats/Bugs

  1. Some SCORM Courses Emit multiple LMSInitialize at the start simultaneously, which causes 2 LMS Course Progress to be created. But as the course progress, only the latest Course Progress gets updated. I have changed Stat Calculation to only calculate Completed Course Progress, so it wouldn't cause any issue in Progress Calculations.
  2. Some courses doesn't have LMSFinish at the end of the course, which causes the course to not change Status to Complete. This is an issue which arises due to incorrect implementation of the SCORM zip file.
  3. There is an existing bug in which Continue Learning Button doesn't work for SCORM Chapters (Notice at the start of the video Demo attached).

Zip Used for Video Demo

@FahidLatheef FahidLatheef marked this pull request as ready for review March 2, 2025 10:34
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

SCORM Course Resumability
2 participants