how to make a course that fit SLK

Topics: User Forum
May 10, 2011 at 11:07 AM

I made a course manually as follow,

First, I make course using eXe ,and then package course. I unzip the course, replace it’s APIWrapper.js, common.js with Solitaire’s. At the same time I modified the imsmanifest.xml to remove file node that reference APIWrapper.js and SCOFunctions.js provide default by eXe in resource node. Here is what I did:

 

imsmanifest.xml

<resource identifier="RES-eXenewPackage499a0be61e61823bda10" type="webcontent" adlcp:scormtype="sco" href="net_framework_2.html">

      <file href="net_framework_2.html"/>

      <file href="base.css"/>

      <file href="content.css"/>

      <file href="popup_bg.gif"/> 

      <file href="icon_question.gif"/>

      <file href="APIWrapper.js"/>

      <file href="SCOFunctions.js"/>

</resource>

After I remove <file href="APIWrapper.js"/>,<file href="SCOFunctions.js"/>

It becomes,

<resource identifier="RES-eXenewPackage499a0be61e61823bda10" type="webcontent" adlcp:scormtype="sco" href="net_framework_2.html">

      <file href="net_framework_2.html"/>

      <file href="base.css"/>

      <file href="content.css"/>

      <file href="popup_bg.gif"/> 

      <file href="icon_question.gif"/> 

</resource>

 

net_framework_2.html

<head>

<!APIWrapper.js,Common.js come from Solitaire -->

<script type="text/javascript" src="APIWrapper.js"></script>

<script type="text/javascript" src="Common.js"></script>

<script language="javascript" type="text/javascript">

// <!CDATA[

// Store answers in the SCORM data model.

        function storeAnswers() {

            // blank1, fill out the fill-in response

            alert(document.examForm.blank1.value);

            storeDataValue("cmi.interactions.0.id", "blank1");

            storeDataValue("cmi.interactions.0.type", "fill-in");

            storeDataValue("cmi.interactions.0.learner_response", document.examForm.blank1.value);

 

            // blank2, fill out the fill-in response

            alert(document.examForm.blank2.value);

            storeDataValue("cmi.interactions.1.id", "blank2");

            storeDataValue("cmi.interactions.1.type", "fill-in");

            storeDataValue("cmi.interactions.1.learner_response", document.examForm.blank2.value);

        }

  // Initialize communication with the SCORM API and set-up the page with previously stored answers.

        function LoadAPI() {

            initializeCommunication();

            storeDataValue("cmi.completion_status", "incomplete");

        }

     // Setup to leave the page and terminate communication with the SCORM API.

        function UnloadAPI() {

            //  Set the SCO to completed and suspend the attempt so when the user revisits the page they get their previous state.

            storeDataValue("cmi.exit", "suspend");

            storeDataValue("cmi.completion_status", "completed");

            terminateCommunication();

        }

// ]]>

</head>

<body onload="LoadAPI()" onunload="UnloadAPI()">

<form name="examForm" id="examForm">

      <div id="cloze14_22">                    

            What is the two component of .NET Framework 4?

            <input type="text" value="" id="blank1" autocomplete="off" style="width: 3em" />

            <input type="text" value="" id="blank2" autocomplete="off" style="width: 3em" />                                                         <input type="button" name="submit14_22" value="Submit?" id="submit14_22 onclick="storeAnswers()" />                              

       </div>

</form>

</body>

 

Finally, I zip it up with 7zip, when I upload to SLK, and view the page, it shows 

 "unable to locate the LMS's API Implementation.

Communication with the LMS will not occur."

I don’t know why. May be I forget something important. please help me. Thanks.

The course download

http://www.4shared.com/file/OB1KZ0ce/10564A.html

Coordinator
Jul 31, 2011 at 2:24 PM

I can't see why you are trying to do this, but you have removed the file the package uses to communicate with whatever LMS it is hosted in. Every page in the package will reference that file, so to replace it you will have to replace every reference everywhere, which if it is a flash based package could be difficult.

 

Richard

SLK Coordinator

http://blog.salamandersoft.co.uk