Repository navigation
Expand file tree
/
Copy pathscript.js
More file actions
56 lines (38 loc) · 1.63 KB
/
Copy pathscript.js
File metadata and controls
56 lines (38 loc) · 1.63 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
/* Home page */
const progressText = document.getElementById("progressText");
const progressBar = document.getElementById("progressBar");
if (progressBar && progressText) {
const totalLessons = 8;
let completedLessons = 0;
const lessonsIds = ["gettingStarted",
"variables",
"inputOutput",
"conditions",
"loops",
"strings",
"lists",
"functions"];
lessonsIds.forEach(function(lessonId){
if (localStorage.getItem(lessonId) === "completed") {
completedLessons++;
}
});
progressText.textContent = `${completedLessons} of ${totalLessons} lessons completed`;
progressBar.setAttribute("aria-valuenow", completedLessons);
const progress = (completedLessons / totalLessons) * 100;
progressBar.querySelector("span").style.width = `${progress}%`;
}
/* Getting Started page */
const lesson = document.querySelector(".lesson");
if (lesson) {
const completeButton = document.querySelector(".lessonComplete");
const lessonId = lesson.dataset.lesson;
const isCompleted = localStorage.getItem(lessonId);
if (isCompleted === "completed") {
completeButton.textContent = "Lesson completed";
}
completeButton.addEventListener("click", function() {
localStorage.setItem(lessonId, "completed");
completeButton.textContent = "Lesson completed";
});
}