예제 #1
0
def api_update_user_info(role, id):
    print request.data
    if 'role' in session and session['role'] == 'admin':
        return return_json(admin_edit_user(role, id, request.form))
    else:
        if not 'old_password' in request.form:
            raise APIError('请输入原密码后更新用户信息', status_code=403)
        args = {}
        for key, value in request.form.items():
            if key == 'old_password':
                continue
            args[key] = value

        return return_json(
            update_user(role, id, request.form['old_password'], args))
예제 #2
0
def api_admin_add_user(role):
    if not role in ['student', 'teacher', 'admin']:
        raise APIError('Invalid role', status_code=404)
    args = {}
    for k, v in request.form.items():
        args[k] = v
    return return_json(admin_add_user(role, args))
예제 #3
0
def api_teacher_grading(record_id):
    regular = request.form['regular']
    midterm = request.form['midterm']
    final = request.form['final']
    total = request.form['total']

    return return_json(write_grade(record_id, regular, midterm, final, total))
예제 #4
0
def user_login():
    username = request.form['username']
    password = request.form['password']
    role = request.form['role']

    user = login(username, password, role)
    return return_json(user)
예제 #5
0
def api_query_user_by_numid(role, id):
    if 'role' not in session or session['role'] == 'student':
        raise APIError('Insufficient permission', status_code=403)
    if role not in ['student', 'teacher', 'admin']:
        raise APIError('Invalid role', status_code=404)

    return return_json(query_user_by_numid(role, id))
예제 #6
0
def api_list_user(role):
    if 'role' not in session or session['role'] == 'student':
        raise APIError('Insufficient permission', status_code=403)
    if role not in ['student', 'teacher', 'admin']:
        raise APIError('Invalid role', status_code=404)

    search_credit = request.args
    return return_json(list_user(role, search_credit))
예제 #7
0
def api_get_course_by_id(id):
    return return_json(query_course_by_id(id))
예제 #8
0
def user_logout():
    logout()
    return return_json({'status': 1})
예제 #9
0
def api_get_course_by_cid(cid):
    return return_json(query_course_by_num(cid))
예제 #10
0
def api_student_write_rating(sel_id, rating):
    return return_json(write_rating(sel_id, rating))
예제 #11
0
def get_current_user():
    return return_json(current_user())
예제 #12
0
def api_retrieve_student_courses(id):
    return return_json(get_student_courses(id))
예제 #13
0
def api_list_selection_by_student(student_id):
    search = {}
    search['sid'] = student_id
    for k, v in request.args:
        search[k] = v
    return return_json(list_selection_of_student(search))
예제 #14
0
def api_admin_add_course():
    return return_json(add_course(request.form))
예제 #15
0
def api_get_selection(id):
    return return_json(query_selection(id))
예제 #16
0
def api_admin_list_selections():
    return return_json(list_selections(request.args))
예제 #17
0
def api_admin_update_course(id):
    return return_json(update_course(id, request.form))
예제 #18
0
def api_admin_add_selection():
    student_id = int(request.form['student'])
    course_id = int(request.form['course'])
    return return_json(create_selection(student_id, course_id))
예제 #19
0
def api_admin_delete_course(id):
    return return_json(delete_course(id))
예제 #20
0
def api_retrieve_teacher_courses(id):
    return return_json(list_teacher_courses(id))
예제 #21
0
def api_admin_list_course():
    return return_json(list_course(request.args))
예제 #22
0
def api_list_selection_by_course(course_id):
    search = {}
    search['cid'] = course_id
    for k, v in request.args:
        search[k] = v
    return return_json(list_selections_of_course(search))
예제 #23
0
def api_admin_update_selection(id):
    return return_json(
        update_selection(id, int(request.form['student']),
                         int(request.form['course'])))
예제 #24
0
def api_retrieve_student_grades(id):
    return return_json(get_student_grades(id))
예제 #25
0
def api_admin_delete_selection(id):
    return return_json(remove_selection(id))
예제 #26
0
def api_admin_remove_user(role, id):
    if role not in ['student', 'teacher', 'admin']:
        raise APIError('Invalid role', status_code=404)

    return return_json(admin_delete_user(role, id))