def get_topic_progress(self, course_enrollment_name, topic): """ Get Progress Dictionary of a student for a particular topic :param self: Student Object :param course_enrollment_name: Name of the Course Enrollment :param topic: Topic DocType Object """ contents = topic.get_contents() progress = [] if contents: for content in contents: if content.doctype in ("Article", "Video"): status = check_content_completion(content.name, content.doctype, course_enrollment_name) progress.append({ "content": content.name, "content_type": content.doctype, "is_complete": status }) elif content.doctype == "Quiz": status, score, result, time_taken = check_quiz_completion( content, course_enrollment_name) progress.append({ "content": content.name, "content_type": content.doctype, "is_complete": status, "score": score, "result": result, }) return progress
def get_topic_progress(self, course_enrollment_name, topic): """ Get Progress Dictionary of a student for a particular topic :param self: Student Object :param course_enrollment_name: Name of the Course Enrollment :param topic: Topic DocType Object """ contents = topic.get_contents() progress = [] if contents: for content in contents: if content.doctype in ('Article', 'Video'): status = check_content_completion(content.name, content.doctype, course_enrollment_name) progress.append({ 'content': content.name, 'content_type': content.doctype, 'is_complete': status }) elif content.doctype == 'Quiz': status, score, result = check_quiz_completion( content, course_enrollment_name) progress.append({ 'content': content.name, 'content_type': content.doctype, 'is_complete': status, 'score': score, 'result': result }) return progress
def get_contents(topic, course, program): student = utils.get_current_student() if student: course_enrollment = utils.get_or_create_course_enrollment(course, program) contents = topic.get_contents() progress = [] if contents: for content in contents: if content.doctype in ("Article", "Video"): if student: status = utils.check_content_completion(content.name, content.doctype, course_enrollment.name) else: status = True progress.append({"content": content, "content_type": content.doctype, "completed": status}) elif content.doctype == "Quiz": if student: status, score, result, time_taken = utils.check_quiz_completion( content, course_enrollment.name ) else: status = False score = None result = None progress.append( { "content": content, "content_type": content.doctype, "completed": status, "score": score, "result": result, } ) return progress
def get_contents(topic, course, program): student = utils.get_current_student() if student: course_enrollment = utils.get_or_create_course_enrollment( course, program) contents = topic.get_contents() progress = [] if contents: for content in contents: if content.doctype in ('Article', 'Video'): if student: status = utils.check_content_completion( content.name, content.doctype, course_enrollment.name) else: status = True progress.append({ 'content': content, 'content_type': content.doctype, 'completed': status }) elif content.doctype == 'Quiz': if student: status, score, result, time_taken = utils.check_quiz_completion( content, course_enrollment.name) else: status = False score = None result = None progress.append({ 'content': content, 'content_type': content.doctype, 'completed': status, 'score': score, 'result': result }) return progress