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

Method onLoaded

app/views/courses/TeacherClassView.js:357–383  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

355 }
356
357 onLoaded () {
358 // Get latest courses for student assignment dropdowns
359 this.getLatestCourses()
360 this.removeDeletedStudents() // TODO: Move this to mediator listeners? For both classroom and students?
361 this.calculateProgressAndLevels()
362
363 // render callback setup
364 this.listenTo(this.courseInstances, 'sync change update', this.debouncedRender)
365 this.listenTo(this.state, 'sync change', function () {
366 if (_.isEmpty(_.omit(this.state.changed, 'searchTerm'))) {
367 return this.renderSelectors('#license-status-table')
368 } else {
369 return this.debouncedRender()
370 }
371 })
372 this.listenTo(this.students, 'sort', this.debouncedRender)
373 this.getCourseAssessmentPairs()
374
375 this.courses.models.forEach(course => {
376 const levels = this.classroom.getLevels({ courseID: course.id }).models.map(level => {
377 let left, left1
378 return { key: level.get('original'), practice: (left = level.get('practice')) != null ? left : false, assessment: (left1 = level.get('assessment')) != null ? left1 : false }
379 })
380 return this.campaignLevelNumberMap[course.get('campaignID')] = utils.createLevelNumberMap(levels)
381 })
382 return super.onLoaded()
383 }
384
385 afterRender () {
386 super.afterRender(...arguments)

Callers

nothing calls this directly

Calls 5

getLatestCoursesMethod · 0.95
removeDeletedStudentsMethod · 0.95
getLevelsMethod · 0.45
getMethod · 0.45

Tested by

no test coverage detected