예제 #1
0
파일: v1.py 프로젝트: KhanWorld/KhanAcademy
@route("/api/v1/user/students/progressreport", methods=["GET"])
@oauth_optional()
@jsonp
@jsonify
def get_student_progress_report():
    user_data_coach = get_user_data_coach_from_request()

    if not user_data_coach:
        return api_invalid_param_response("User is not logged in.")

    try:
        students = get_students_data_from_request(user_data_coach)
    except Exception, e:
        return api_invalid_param_response(e.message)

    return class_progress_report_graph.class_progress_report_graph_context(
        user_data_coach, students)

@route("/api/v1/user/goals", methods=["GET"])
@oauth_optional()
@jsonp
@jsonify
def get_user_goals():
    student = models.UserData.current() or models.UserData.pre_phantom()
    user_override = request.request_user_data("email")
    if user_override and user_override.key_email != student.key_email:
        if not user_override.is_visible_to(student):
            return api_unauthorized_response("Cannot view this profile")
        else:
            # Allow access to this student's profile
            student = user_override
예제 #2
0
def class_profile_progress_report_graph(user_data_coach):
    return render_graph_html_and_context(
        "class_progress_report_graph.html",
        class_progress_report_graph.class_progress_report_graph_context(
            user_data_coach))
예제 #3
0
def class_profile_progress_report_graph(user_data_coach):
    return render_graph_html_and_context("class_progress_report_graph.html", class_progress_report_graph.class_progress_report_graph_context(user_data_coach))