def view_resource(resource_id): source_course = request.args.get('source') course = lr_service.get_resource(resource_id) pre_requisite = lr_service.get_course_prerequisites(resource_id) pre_learning = lr_service.get_course_prelearning(resource_id) if current_user.is_authenticated: learning_records = lrs_service.load_course_learning_records( email=current_user.email, course_uri=url_for('.view_resource', resource_id=course['id'], _external=True)) course['learningRecord'] = learning_records[0] if learning_records else None if pre_requisite: pre_learning_records = lrs_service.load_course_learning_records( email=current_user.email, course_uri=url_for('.view_resource', resource_id=pre_requisite['id'], _external=True)) pre_requisite['learningRecord'] = pre_learning_records[0] if pre_learning_records else None return render_template('learningresource/view_resource.html', course=course, pre_requisite=pre_requisite, pre_learning=pre_learning, user_logged_in=current_user.is_authenticated, source_course=source_course)
def start(resource_id): source_course_id = request.args.get('source') course = lr_service.get_resource(resource_id) resp = make_response(redirect(url_for('.view_course_page', resource_id=resource_id, res_type=TYPE_PAGE, number=0, source=source_course_id))) if course.get('preRequisites', None): pre_req_records = lrs_service.load_course_learning_records( email=current_user.email, course_uri=url_for('.view_resource', resource_id=course.get('preRequisites', None), _external=True)) print(pre_req_records) if not pre_req_records: flash('You must complete all pre learning before doing this course') resp = make_response(redirect(url_for('.view_resource', resource_id=course['id'], source=source_course_id))) resp.set_cookie(COOKIE_ANSWERS, '', expires=0) return resp
def view_course_result(resource_id): course = lr_service.get_resource(resource_id) record = lrs_service.load_course_learning_records( email=current_user.email, course_uri=url_for('.view_resource', resource_id=resource_id, _external=True))[0] source_course = lr_service.get_resource(request.args.get('source')) if source_course and course['completionSuggestions']: ecourses = next(resource for resource in course['completionSuggestions'] if resource['type'] == "Online learning") ecourses['resources'].insert(0, { 'title': source_course['title'], 'url': url_for('learningresource.view_resource', resource_id=source_course['id']) }) current_app.logger.info(record) back_to_source = source_course and source_course.get('preRequisites', None) == course['id'] return render_template('/learningresource/course_result.html', course=course, record=record, source_course=source_course, back_to_source=back_to_source)