예제 #1
0
def login():
    if request.method == 'GET':
        return render_template('login.html')
    else:
        account = request.form['account']
        password = request.form['password']
        if len(account) == 0 | len(password) == 0:
            return render_template('login.html')

        cursor.execute('select account from coursefilemanagement.user')
        accounts = cursor.fetchall()

        for account in accounts:
            if request.form['account'] == account[0]:
                cursor.execute(
                    'select password,usertype from coursefilemanagement.user where account=%s',
                    (account[0]))
                detail = cursor.fetchall()

                if request.form['password'] == detail[0][0]:
                    curr_user = User()
                    curr_user.id = account[0]
                    print(curr_user.id)
                    login_user(curr_user)
                    return redirect(url_for('.homepage'))

        return '<h>账号、密码错误!</h>'
예제 #2
0
def newmessage():
    if request.method == 'GET':
        return render_template('mailbox.html')
    else:
        receiver = request.form['receiver']
        content = request.form['content']
        if current_user.utype == 1:
            cursor.execute(
                'select sID '
                'from coursefilemanagement.student '
                'where account=%s', (current_user.get_id()))
            sid = cursor.fetchall()
            messageID = time.strftime("%m%d%H%M%S", time.localtime()) + str(
                random.randint(1, 99))
            cursor.execute(
                'insert into coursefilemanagement.message(sID, tID, messageID, content, direction) '
                'values (%s,%s,%s,%s,%s)',
                (sid[0][0], receiver, messageID, content, 0))
            conn.commit()
            return 'success!'
        elif current_user.utype == 2:
            cursor.execute(
                'select tID '
                'from coursefilemanagement.teacher '
                'where account=%s', (current_user.get_id()))
            tid = cursor.fetchall()
            messageID = time.strftime("%m%d%H%M%S", time.localtime()) + str(
                random.randint(1, 99))
            cursor.execute(
                'insert into coursefilemanagement.message(sID, tID, messageID, content, direction) '
                'values (%s,%s,%s,%s,%s)',
                (receiver, tid[0][0], messageID, content, 1))
            conn.commit()
            return 'success!'
예제 #3
0
def mailbox():
    if current_user.utype == 1:
        cursor.execute(
            'select tid, sid, messageid, content, direction '
            'from coursefilemanagement.message natural join coursefilemanagement.student '
            'where account = %s', (current_user.get_id()))
        message_list = cursor.fetchall()
        print(message_list)
        return render_template('mailbox.html', message_list=message_list)
    elif current_user.utype == 2:
        cursor.execute(
            'select tid, sid, messageid, content, direction '
            'from coursefilemanagement.message natural join coursefilemanagement.teacher '
            'where account = %s', (current_user.get_id()))
        message_list = cursor.fetchall()
        print(message_list)
        return render_template('mailbox.html', message_list=message_list)
예제 #4
0
def download_file():
    filepath = '../' + 'files/' + current_user.get_id()
    fileID = request.form['id']
    cursor.execute(
        'select fileName from coursefilemanagement.file where fileID=%s',
        fileID)
    filename = cursor.fetchall()
    print(filepath)
    print(filename[0][0])
    return send_from_directory(filepath, filename[0][0], as_attachment=True)
예제 #5
0
def load_user(user_id):
    curr_user = User()
    curr_user.id = user_id
    cursor.execute(
        'select usertype '
        'from coursefilemanagement.user '
        'where account=%s', user_id)
    detail = cursor.fetchall()
    ac_type = detail[0][0]
    curr_user.utype = ac_type
    return curr_user
예제 #6
0
def perinfo():
    if current_user.utype == 1:
        cursor.execute('select * from coursefilemanagement.student')
        student_details = cursor.fetchall()
        for student_detail in student_details:
            if student_detail[2] == current_user.get_id():
                return render_template('sperinfo.html',
                                       u_detail=(student_detail, ))
        return render_template('sperinfo.html',
                               u_detail=(('?', '?', '?', '?'), ))

    elif current_user.utype == 2:
        cursor.execute('select * from coursefilemanagement.teacher')
        teacher_details = cursor.fetchall()
        cursor.execute('select * from coursefilemanagement.building')
        building_details = cursor.fetchall()
        cursor.execute('select * from coursefilemanagement.course')
        course_details = cursor.fetchall()
        cursor.execute('select * from coursefilemanagement.major')
        major_details = cursor.fetchall()
        cursor.execute('select * from coursefilemanagement.student_course')
        sc_details = cursor.fetchall()

        for teacher_detail in teacher_details:
            if teacher_detail[2] == current_user.get_id():
                return render_template('tperinfo.html',
                                       u_detail=(teacher_detail, ),
                                       building_details=building_details,
                                       course_details=course_details,
                                       major_details=major_details,
                                       sc_details=sc_details)
        return render_template('tperinfo.html',
                               u_detail=(('?', '?', '?'), ),
                               building_details=building_details,
                               course_details=course_details,
                               major_details=major_details,
                               sc_details=sc_details)
예제 #7
0
def show_file():
    cursor.execute('select * from coursefilemanagement.file')
    file_list = cursor.fetchall()
    print(file_list)
    return render_template('showfile.html', file_list=file_list)