Custom Certification Test (Resume Customization)
Sep 06, 2018
I am currently working with a team of developers on creating a certification test. This test will run on our LMS and has been designed in Storyline 360.
The test is timed and is intended to be taken in 1 session. We don't want users exiting the test and search for answers or continuing at their own pace. Unfortunately, the Storyline timer pauses upon exit and continues upon resume.
I am looking for a way to prevent users from continuing or restarting the test. Storyline Player gives the following options: Always Resume, Never Resume, or Prompt User.
I currently have it set to "Prompt User" with customized text stating "The exam session has expired, please contact us for assistance." Since I can't toggle buttons inside that prompt, the user could just click yes or restart. Is there a way to remove them in Storyline? I have begun exploring the XML files (particularly the frame XML document) to find any Resume options/buttons I can set to false or turn off.
Any ideas?
9 Replies
Examining the HTML code on the page, these are the identifiers of the two items in question. I am going to look through the SCORM package to find out where they live.
Button
<div role="button" aria-label="This exam session has expired. Please contact us at onlinelearning@nw3c.org for assistance." aria-disabled="false" tabindex="-1" data-reactid=".0.5.0.1.0.0">This exam session has expired. Please contact us at onlinelearning@nw3c.org for assistance.</div>
Restart
<div class="restart" role="button" aria-label="Restart" aria-disabled="false" tabindex="-1" data-reactid=".0.5.0.1.1"><svg class="cs-icon" preserveAspectRatio="none" x="0px" y="0px" width="13px" height="16px" viewBox="0 0 13 16" data-reactid=".0.5.0.1.1.0"><path fill="#FFFFFF" stroke="none" d="M 10.95 8.75 Q 11 9 11 9.25 10.95 11.15 9.7 12.4 8.4 13.7 6.5 13.75 4.6 13.7 3.3 12.4 2.05 11.15 2 9.25 2.05 7.3 3.3 6.05 4.398828125 4.998828125 6 4.75 L 6 6.9 Q 6.05 7.75 6.85 7.35 L 11.35 4.3 Q 11.7 4.05 11.7 3.75 11.7 3.45 11.35 3.2 L 6.85 0.15 Q 6.05 -0.3 6 0.6 L 6 2.75 Q 3.4517578125 3.001171875 1.8 4.75 0.05 6.6 0 9.25 0.05 12 1.9 13.85 3.75 15.65 6.5 15.75 9.25 15.65 11.1 13.85 12.95 12 13 9.25 13 9 13 8.75 L 10.95 8.75 Z" data-reactid=".0.5.0.1.1.0.0"></path></svg><div class="restart-text" style="color:white;display:inline-block;padding-left:1em;transform:translateY(-3px);" data-reactid=".0.5.0.1.1.1">Restart</div></div>
Hi there, Michael. Thanks for sharing your need, here. Is there any setting in your LMS that will control whether the user can attempt the module more than once? If they launch the course and exit, can the LMS prevent them from launching the course again?
Storyline will have reported some sort of "incomplete" or "failing" status to your LMS, depending on what reporting options you chose when publishing. Hopefully that will be visible on your end to see that they attempted and did not complete or satisfy the exam.
Hi Michael,
See if this sample project works for you.
On the master slide there is an execute javascript trigger. This trigger retrieves the entry mode for the course and sets a variable (nResume).
Then there are triggers to show a layer with your session expired message. Also on the start of this layer, there are triggers to disable the next, previous, and submit buttons.
I tested this course in my LMS and on the SCORM Cloud. I also tested publishing in SCORM 1.2 and SCORM 2004.
Hi Crystal, thanks for the response. Currently, we are running SCORM Engine 2013 with our LMS and there are no options for controlling packages published in 2004 format.
Hi Russell, this is very helpful. I believe this is the solution to what I want to accomplish with the exam. I added the javascript, variable and triggers as you provided in the sample and tested with the same results.
My next question is: Is this an all or nothing type of situation that sets the variable when the test is open, or can I have a specific slide trigger that. For example, there is a title slide, slide with instructions and then the following slide begins the test with the timer and questions drawn from the question bank. Ideally, we want that variable to be triggered between the 2nd slide and 1st question. That way, users can view the instructions and decide whether to start the test or not. The point of no return is when the first question is viewed.
Thanks for all of your help.
Hello Michael,
You should be able to put the error layer and triggers on the question slide master instead of the very top master slide. This way the error layer message will only appear on quiz questions.
I did a little bit more thinking. You will also need another variable (true/false) Set it to true when they move past the instructions. I'll try to create another example project for you to look at.
Hello Michael,
I'm having problems getting this to work an instructions slide. I don't think I can get this working for you.
For example:
The learner launches the test and views the instructions slide. But doesn't actually start the quiz.
Then launches at a later time. This means the course (test) is resumed.
Then proceeds to the first question. So then the first question is marked as viewed.
When moved to the next question, The course is still set as resume and question 1 has been viewed. So then the error message pops up.
I haven't been able to come up with a work-around. If I ever come up with something, I'll let you know.
Russell,
Thanks again for your help on this issue. I appreciate the sample project as well. I've been working with our LMS Administrator and it appears that we can add some code to run when the data is sent to the LMS.
This discussion is closed. You can start a new discussion or contact Articulate Support.