-
Notifications
You must be signed in to change notification settings - Fork 49
Expand file tree
/
Copy pathSCORMFunctions.js
More file actions
62 lines (51 loc) · 2.24 KB
/
SCORMFunctions.js
File metadata and controls
62 lines (51 loc) · 2.24 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
// SCORM Functions
function loadPage() {
initializeAPI();
console.log("SCORM API initialized.");
}
function unloadPage() {
saveTextBoxData(); // Save data when the page is unloaded
terminateAPI();
console.log("SCORM API terminated.");
}
function loadChapter(chapter) {
loadPage();
var suspendData = getSuspendData();
if (suspendData) {
console.log("Suspend data retrieved:", suspendData);
// Restore the text data in the textbox
document.getElementById("chapter-textbox").value = suspendData;
}
var completionStatus = API.LMSGetValue("cmi.core.lesson_status");
if (completionStatus === "completed") {
document.getElementById("completion-status").innerText = "This chapter has been completed.";
document.getElementById("complete-button").style.display = "none";
} else {
document.getElementById("completion-status").innerText = "This chapter has not been completed.";
document.getElementById("reset-button").style.display = "none";
}
}
function completeChapter(chapter) {
setProgress("completed");
alert(chapter + " completed! Progress recorded.");
document.getElementById("completion-status").innerText = "This chapter has been completed.";
document.getElementById("complete-button").style.display = "none";
document.getElementById("reset-button").style.display = "block";
// Optionally save some suspend data when the chapter is completed
setSuspendData(document.getElementById("chapter-textbox").value);
}
function resetChapter(chapter) {
setProgress("incomplete");
alert(chapter + " reset to incomplete.");
document.getElementById("completion-status").innerText = "This chapter has not been completed.";
document.getElementById("complete-button").style.display = "block";
document.getElementById("reset-button").style.display = "none";
// Clear the suspend data if the chapter is reset
setSuspendData("");
document.getElementById("chapter-textbox").value = ""; // Clear the textbox as well
}
function saveTextBoxData() {
// Save the current state of the textbox into suspend data
var textBoxData = document.getElementById("chapter-textbox").value;
setSuspendData(textBoxData);
}