diff --git a/server/handlers/course_instance_handler.coffee b/server/handlers/course_instance_handler.coffee index 1ee87c11b..5742737ca 100644 --- a/server/handlers/course_instance_handler.coffee +++ b/server/handlers/course_instance_handler.coffee @@ -117,23 +117,35 @@ CourseInstanceHandler = class CourseInstanceHandler extends Handler return doc getLevelSessionsAPI: (req, res, courseInstanceID) -> + console.log "user:", req.user return @sendUnauthorizedError(res) if not req.user? + console.log "courseInstanceID:", courseInstanceID CourseInstance.findById courseInstanceID, (err, courseInstance) => + console.log "err:", err return @sendDatabaseError(res, err) if err + console.log "courseInstance:", courseInstance return @sendNotFoundError(res) unless courseInstance Course.findById courseInstance.get('courseID'), (err, course) => + console.log "err2:", err return @sendDatabaseError(res, err) if err + console.log "course:", course return @sendNotFoundError(res) unless course Campaign.findById course.get('campaignID'), (err, campaign) => + console.log "err3:", err return @sendDatabaseError(res, err) if err + console.log "campaign:", campaign return @sendNotFoundError(res) unless campaign levelIDs = (levelID for levelID of campaign.get('levels')) memberIDs = _.map courseInstance.get('members') ? [], (memberID) -> memberID.toHexString?() or memberID + console.log "memberIDs: ", memberIDs query = {$and: [{creator: {$in: memberIDs}}, {'level.original': {$in: levelIDs}}]} + console.log "query: ", query cursor = LevelSession.find(query) cursor = cursor.select(req.query.project) if req.query.project cursor.exec (err, documents) => + console.log "err4:", err return @sendDatabaseError(res, err) if err? + console.log "Sending success!" cleandocs = (LevelSessionHandler.formatEntity(req, doc) for doc in documents) @sendSuccess(res, cleandocs)