Can the menu store learner's progress (state)

Create unique Flash widgets you can import into SmartBuilder

Moderator: Nav

Can the menu store learner's progress (state)

Postby jbasore » Tue Mar 23, 2010 1:12 pm

Hello,
I need to be able to store a learner's progress (all the pages they completed) in the menu.
For example, if a learner has completed the first ten pages (out of a total of thirty), and then they close their browser, I want it so that when they return, and access the menu, that there is a checkmark next to each of the ten pages they have completed. Ideally, I would like to apply this to the "menu with Pages" sdk instead of the newer "topic and Pages" menu. This is because I don't want the learner to have to open a topic to access the page they last viewed, and because I have more control over the appearance of the menu.

I'm already using cookies as a bookmarking method, and will later want to apply this functionality when I deploy to an LMS.
-James
jbasore
 
Posts: 3
Joined: Mon Dec 21, 2009 7:31 am

Re: Can the menu store learner's progress (state)

Postby Nav » Wed Mar 24, 2010 2:31 pm

First you'll want to add a Menu with Topics and Pages object your Master Page, and configure it.

Basically what you're trying to do is extract the state of the menu and store it somewhere. Then, when the lesson reopens, you want to take that stored state and apply it back to the menu. So you need to decide where you are going to store it, and you have 2 options. One way is to use a cookie, and the other is to use SCORM's suspend_data if you have an LMS.

Cookie:

You'll need to add a Cookie object to your page. Then set up the following actions:
Name: Store menu state
Trigger: Page Controller > onPageChange
Response: Cookie object > setCookie > "menuState" ; Function > Menu > getVisitedPages ; "30"

Name: Retrieve and set menu state
Trigger: Page Controller > onPageLoad
Response: Menu > setVisitedPages > Function > Cookie object > getCookie > "menuState"

SCORM:

Name: Store menu state
Trigger: Page Controller > onPageChange
Response: SCORM/AICC > LMSSetValue(SCORM only) > "cmi.suspend_data" ; Function > Function > Menu > getVisitedPages

Name: Retrieve and set menu state
Trigger: Page Controller > onPageLoad
Response: Menu > setVisitedPages > Function > SCORM/AICC > LMSGetValue(SCORM only) > "cmi.suspend_data"

Whichever you use, you'll want to create these actions after the regular actions that you set up for the menu object (which you probably already have, and you can find instructions here: http://help.smartbuilder.com/node/545

I've also put 2 examples in the Shared Library > Examples on this topic called "Remember menu state" that you can take a look at for reference.

Let me know if that doesn't work!

- Nav
Nav
 
Posts: 866
Joined: Mon Nov 05, 2007 2:58 pm

Re: Can the menu store learner's progress (state)

Postby Randall Smith » Thu May 12, 2011 6:40 am

There Is there a way to store and retrieve the visited pages with the regular menu object also. We can't use the Menu with Topic object because the course is to be translated into several languages and topic names can't be translated.

I have found that I can set the selected pages to a retrieved bookmark value using actions which use a count value compared to the bookmark value. If this count is less or equal to bookmark value it sets the selected page and then increments the count.
Thanks,
Randy
Randall Smith
 
Posts: 40
Joined: Mon Sep 10, 2007 2:25 pm
Location: Madison, WI

Re: Can the menu store learner's progress (state)

Postby Nav » Fri May 13, 2011 5:12 pm

Hi Randy,
Can you use the Menu with Topic and Pages, and just don't create any Topics?

If you must use the Menu with Pages object, you can set up some functionality to set the selected page index using a number of actions, but you'll probably need to set up a conditional action and a variable for each page of your lesson. Or some complex interactivity where it marks the previous pages below the bookmark as complete. I've done it before, but ended up deleting it once the Menu with Topics and Pages was enhanced with this ability.

- Nav
Nav
 
Posts: 866
Joined: Mon Nov 05, 2007 2:58 pm


Return to Using the Object SDK

Who is online

Users browsing this forum: No registered users and 2 guests

cron
Not able to open ./cache/data_global.php