Forum Discussion
Blank screen after update
Sure I have seen this mentioned in the forum before but I cannot locate it now (the search function is awful).
If I update my content and re-export it to SCORM, after updating the content on my LMS people who have previously launched the content (and not completed the module) are presented with a blank screen when they re-launch (the updated content). This is an issue unique to Rise courses. Please advise if this is a known / replicatable issue. And if there is something that can be done to resolve.
- MichaelGetzCommunity Member
I believe I've found a solution to this issue which I've been able to tested successfully in Moodle and may work for other LMSs as well:
1. Unzip the Rise SCORM 1.2 zip package (I haven't tested this for SCORM 2004) and locate the file scormdriver.js in the /scormdriver folder.
2. Open scormdriver.js in Notepad or other text editor.
3. Locate this function, and highlight the entire line:
function SCORM_GetBookmark(){WriteToDebug("In SCORM_GetBookmark");SCORM_ClearErrorInfo();return SCORM_CallLMSGetValue("cmi.core.lesson_location");}
4. Replace it with this function:
function SCORM_GetBookmark(){WriteToDebug("In SCORM_GetBookmark");SCORM_ClearErrorInfo();return "";}
This basically disables the bookmark retrieval code so that while all the learner completion and progress status is retained (and shows on the left side Rise menu), it causes Rise to always restart at the opening page.
Then re-zip up the Rise SCORM package (make sure to create the zip from the root folder of the course) and re-upload to the LMS.
- RHoisanCommunity Member
Hello Michael, thanks but for some reason, this doesn't work anymore (it used to). I think RISE made some updates and I can't find this line anymore:
"function SCORM_GetBookmark(){WriteToDebug("In SCORM_GetBookmark");SCORM_ClearErrorInfo();return SCORM_CallLMSGetValue("cmi.core.lesson_location");}"
Any ideas?
Thanks
- RHoisanCommunity Member
It's fine I found the line, it's been moved but it's still there in the scormdriver.js
This whole thing is just annoying - making changes to a Rise project with 3K users already enrolled...I do hope the Articulate team takes this seriously and provides a fix. It is a BIG deal.
- MichaelGetzCommunity Member
Glad you found the line in scormdriver.js, Robert.
When you made the suggested changes to it, did you find it worked for you as well? And just so others will see, what LMS are you on?
Thanks!
- RHoisanCommunity Member
Yes, it does work, Michael.
We are using Totara LMS here in the UK. Publishing RISE courses with SCORM 1.2...
Thanks,
Robert
- MichelleKotulskCommunity Member
We are also using Totara! You had success with this update? I
- RHoisanCommunity Member
- MichelleKotulskCommunity Member
Yes, I know what you mean. That is an issue with Totara and replacing SCORM. I wish they would fix that issue.
- AndrewReid-14e2Community Member
I had to work around this problem yesterday myself and I can assure everyone that this problem is not an LMS issue. It is specific to Rise.
The problem is that Rise uses unique IDs for each lesson in a course, and these unique IDs change when you duplicate/copy/send a course. So, if you duplicated the course to do a version update, or if you sent the course to someone else so they could do a version update, the new version of the course will have different lesson IDs.
The lesson IDs are used for bookmarking, so if you overwrite an existing course in your LMS with a new a copied/sent version, all existing users who had previously accessed the course will now have a bookmark for a lesson ID which doesn't exist in the updated version of the course.
When the Rise course cannot find a lesson with the ID matching the user's bookmark, it generates an error, and it's at this point the updated course is breaking.
It would be simple for the Rise course to first check if the lesson ID exists before attempting to load the lesson data, but that's not happening at the moment, so the resulting error is what breaks the course.
Some LMSs, such as SCORM Cloud notice the error and respond to it by redirecting the user to the start of the learning content. That doesn't solve the underlying problem of the differences between IDs, but it at least allows users to access the learning materials, albeit after losing any progress they had previously made.
I'm a developer so I was able to add some javascript to indexAPI.html to catch any attempts to load an outdated lesson ID and point it to the equivalent new lesson ID instead, but I had to collect the list of old and new IDs first for that to work, and I'd potentially need to update those lists of IDs in the future if we do another update to the course. It worked for me but it's not a robust, workable solution that would help everyone else.
The quickest and simple possible change Articulate could make to fix this problem for everyone is to add in that error handling I mentioned. ie, to check if the requested bookmarked lesson ID exists before trying to load it, and if it doesn't exist, send the user to the default starting point of the course. That would allow all users to at least access the course materials, but it would only work for courses exported after that fix was added to Rise.
The ideal outcome would be for the Articulate devs to make use of the originalId property of the lesson object to store the originial ID of each lesson. That way, if the requested lesson ID isn't found in the actual lesson IDs, it could then check against the lessons' originalId properties to see if it exists in any of those, and if it does, point the user to that lesson's content.
Hi Andrew! Thanks for sharing your findings. You're correct, the course ID changes when you duplicate/copy/send a course to another author. Ashley explained it in this comment as well.
You may reach out to our team here and we'll continue to work with you to correct the issue you are encountering.
- MartinDunne-949Community Member
This is still happening in 2022....
- RHoisanCommunity Member
Yes, this is a big deal that needs to be addressed. Updates to RISE E-learning courses after LMS publication should be a routine occurrence. Instead it's a real pain trying to make a simple text change and replacing the SCORM/ republishing while still keeping the existing course completions intact. Dear Articulate team, please fix this.