MCPcopy Create free account
hub / github.com/codecombat/codecombat / getLevelNumber

Method getLevelNumber

app/models/Classroom.js:86–107  ·  view source on GitHub ↗
(levelID, defaultNumber, courseID)

Source from the content-addressed store, hash-verified

84 }
85
86 getLevelNumber (levelID, defaultNumber, courseID) {
87 // deal with duplicated levels in different course
88 if (!this.levelNumberMap) {
89 this.levelNumberMap = {}
90 const language = this.get('aceConfig')?.language
91 for (const course of (this.get('courses') || [])) {
92 const levels = []
93 for (const level of course.levels) {
94 if (level.original) {
95 if ((language != null) && (level.primerLanguage === language)) { continue }
96 levels.push({ key: level.original, practice: level.practice != null ? level.practice : false, assessment: level.assessment != null ? level.assessment : false })
97 }
98 }
99 _.assign(this.levelNumberMap, utils.createLevelNumberMap(levels, course._id))
100 }
101 }
102
103 if (courseID && this.levelNumberMap[`${courseID}:${levelID}`]) {
104 return this.levelNumberMap[`${courseID}:${levelID}`]
105 }
106 return this.levelNumberMap[levelID] != null ? this.levelNumberMap[levelID] : defaultNumber
107 }
108
109 removeMember (userID, opts) {
110 const options = {

Callers 1

statsForSessionsMethod · 0.95

Calls 1

getMethod · 0.45

Tested by

no test coverage detected