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))
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))
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))
def user_login(): username = request.form['username'] password = request.form['password'] role = request.form['role'] user = login(username, password, role) return return_json(user)
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))
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))
def api_get_course_by_id(id): return return_json(query_course_by_id(id))
def user_logout(): logout() return return_json({'status': 1})
def api_get_course_by_cid(cid): return return_json(query_course_by_num(cid))
def api_student_write_rating(sel_id, rating): return return_json(write_rating(sel_id, rating))
def get_current_user(): return return_json(current_user())
def api_retrieve_student_courses(id): return return_json(get_student_courses(id))
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))
def api_admin_add_course(): return return_json(add_course(request.form))
def api_get_selection(id): return return_json(query_selection(id))
def api_admin_list_selections(): return return_json(list_selections(request.args))
def api_admin_update_course(id): return return_json(update_course(id, request.form))
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))
def api_admin_delete_course(id): return return_json(delete_course(id))
def api_retrieve_teacher_courses(id): return return_json(list_teacher_courses(id))
def api_admin_list_course(): return return_json(list_course(request.args))
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))
def api_admin_update_selection(id): return return_json( update_selection(id, int(request.form['student']), int(request.form['course'])))
def api_retrieve_student_grades(id): return return_json(get_student_grades(id))
def api_admin_delete_selection(id): return return_json(remove_selection(id))
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))