]> _ Git - fluidbook-html5.git/commitdiff
wip #3637 @5
authorVincent Vanwaelscappel <vincent@cubedesigners.com>
Thu, 14 May 2020 17:21:03 +0000 (19:21 +0200)
committerVincent Vanwaelscappel <vincent@cubedesigners.com>
Thu, 14 May 2020 17:21:03 +0000 (19:21 +0200)
js/libs/scorm/apiwrapper.js
js/libs/scorm/scorm.js

index a0cbd76b22999d6d8544589877e170b15c2b4f2a..ff91eb2f7a620563cb4dd90be15ef70b0c11fe76 100644 (file)
@@ -81,10 +81,10 @@ pipwerks.SCORM.API.find = function (win) {
         scorm = pipwerks.SCORM;\r
 \r
     while (\r
-            (!win.API && !win.API_1484_11) &&\r
-            (win.parent) &&\r
-            (win.parent != win) &&\r
-            (findAttempts <= findAttemptLimit)\r
+        (!win.API && !win.API_1484_11) &&\r
+        (win.parent) &&\r
+        (win.parent != win) &&\r
+        (findAttempts <= findAttemptLimit)\r
         ) {\r
         findAttempts++;\r
         win = win.parent;\r
@@ -254,6 +254,10 @@ pipwerks.SCORM.connection.initialize = function () {
                                 //case "passed"     : break;    //SCORM 1.2 only\r
                                 //case "failed"     : break;    //SCORM 1.2 only\r
                                 //case "browsed"    : break;    //SCORM 1.2 only\r
+                                default :\r
+                                    scorm.status('set', completionStatus);\r
+                                    scorm.set('cmi.success_status', scorm.get('cmi.success_status'));\r
+                                    break;\r
                             }\r
                             //Commit changes\r
                             scorm.save();\r
@@ -464,7 +468,7 @@ pipwerks.SCORM.data.set = function (parameter, value) {
             if (success) {\r
                 if (parameter === "cmi.core.lesson_status" || parameter === "cmi.completion_status") {\r
                     scorm.data.completionStatus = value;\r
-                }else if(parameter=='cmi.core.exit' || parameter=='cmi.exit'){\r
+                } else if (parameter == 'cmi.core.exit' || parameter == 'cmi.exit') {\r
                     scorm.data.exitStatus = value;\r
                 }\r
             } else {\r
index 8df6674cb22db5568161bf34dc2b4e335531cdd3..14c11dc0cd676933de97f9697d05de9e3b592893 100644 (file)
@@ -159,7 +159,16 @@ function scormMarkAsComplete() {
 }
 
 function scormExit() {
-    setScormValue('exit', fluidbook.settings.scorm_force_attempts ? 'logout' : 'suspend');
+    var v = 'suspend';
+    if (fluidbook.settings.scorm_force_attempts) {
+        if (pipwerks.SCORM.version === '1.2') {
+            v = 'logout';
+        } else {
+            v = 'normal';
+        }
+    }
+
+    setScormValue('exit', v);
 }
 
 function startScormTimer() {