Version history
Current version: 1.1.7 (May 19, 2008)
Version 1.1.7
- New feature: wrapper automatically sets the initial course status to incomplete.
- This feature is compatible with both SCORM 1.2 and SCORM 2004, and is enabled by default
- If the course status is “not attempted” or “unknown”, the wrapper will instruct the LMS to set the status to “incomplete”.
- If the reported status was anything other than “not attempted” or “unknown”, the wrapper will not make any changes.
- The wrapper does not automatically handle setting a completion status at the end of a course.
- New feature: wrapper automatically sets the exit status if the course has not already set it before terminating the LMS connection.
- This feature is compatible with both SCORM 1.2 and SCORM 2004, and is enabled by default
- If the exit status has already been set by the course, the function will do nothing.
- If the exit status has not been set, the function will check the course status, then:
- If the course has been set to completed (and/or “passed” in SCORM 1.2), the function will automatically set the exit mode to “logout” (SCORM 1.2) or “normal” (SCORM 2004).
- If the course has not been set to completed (and/or “passed” in SCORM 1.2), the function will automatically set the exit mode to “suspend” (based on an assumption that the learner will be coming back to complete the course at a later time).
Version 1.1.6
Removed extra code from debug section, including unneccessary Firebug code and the optional “class” parameter from SCORM.debug.displayInfo(msg, htmlclass).
Version 1.1.5
- Changed the global variable from SCORM to pipwerks to prevent naming conflicts; the variable pipwerks is less likely to run into naming conflicts in an online course than a variable named SCORM. If you prefer to use the variable SCORM, all you need to do is add this line at the top of your HTML file after you import the wrapper file: var SCORM = pipwerks.SCORM;
- Added some shortcuts to make coding a little easier.
- pipwerks.SCORM.init = pipwerks.SCORM.connection.initialize;
- pipwerks.SCORM.get = pipwerks.SCORM.data.get;
- pipwerks.SCORM.set = pipwerks.SCORM.data.set;
- pipwerks.SCORM.save = pipwerks.SCORM.data.save;
- pipwerks.SCORM.quit = pipwerks.SCORM.connection.terminate;
- Relocated some functions: moved some non-SCORM stuff out of the SCORM (moved SCORM.debug.displayInfo to pipwerks.UTILS.trace and SCORM.UTILS.StringToBoolean to pipwerks.UTILS.StringToBoolean).
- Replaced the if SCORM 1.2 / else if SCORM 2004 statements with switch statements. They’re just as effective and take much less space.
- Cleaned up the commenting to make it more readable.
- Licensing change from Creative Commons to the more widely supported MIT-style license.
Version 1.1.4
New feature: the ability to specify what version of the SCORM API should be used. Declare before initializing. Syntax: SCORM.version = "1.2";
Version 1.1.3
- Added SCORM.isAvailable() function; This allows Flash’s ExternalInterface to confirm the presence of the JavaScript wrapper before attempting any LMS communication. Parameters: none. Returns: Boolean (static, true).
- Fixed an important typo: I had forgotten the empty quotes in LMSCommit(”") and Commit(”").
- Removed a few lines of old debugging code
- Added simple check for Firebug console; allows user to enable Firebug console support while avoiding errors in browsers not equipped with Firebug.
- Added optional “class” parameter to SCORM.debug.displayInfo(msg, htmlclass). This allows Flash users to apply an HTML class to the debug text via a span element. Why? When using the DOM to view debugging messages from both the JS wrapper and the Flash classes, it helps to be able to color-code them to easily distinguish the source of the message.
Version 1.1.2
Version 1.1.1
Found a small bug when using the wrapper with Flash (AS2): functions that return string values (such as SCORM.data.get()) were coming out ‘undefined’. Explicitly typing the return value as a string seems to make Flash happy. return String(value);
Version 1.1
- Fixed a few typos in debug statements
- Added extra error-checking during SCORM.connection.initialize; if connection cannot be made AND no error code is given, display notice that server has not responded