예제 #1
0
def load_logged_in_user():
    user_id = session.get('user_id')

    if user_id is None:
        g.user = None
    else:
        g.user_id = user_id
        g.user = get_db().execute('SELECT * FROM user WHERE id = ?',
                                  (user_id, )).fetchone()
예제 #2
0
def register_name(name):
    user_id = g.user_id
    if "db" not in g:
        g.db = get_db()
    g.db.execute("insert into files (user_id, filename) values (?,?)",
                 (user_id, name))
    id = g.db.execute("SELECT last_insert_rowid() ").fetchone()[0]
    print(id)
    g.db.commit()
    return id
예제 #3
0
def login():
    if request.method == 'POST':
        username = request.form['username']
        password = request.form['password']
        db = get_db()
        error = None
        user = db.execute('SELECT * FROM user WHERE username = ?',
                          (username, )).fetchone()

        if user is None:
            error = 'Incorrect username.'
        elif not check_password_hash(user['password'], password):
            error = 'Incorrect password.'

        if error is None:
            session.clear()
            session['user_id'] = user['id']
            return redirect(url_for('files.upload'))

        flash(error)

    return render_template('auth/login.html')
예제 #4
0
def register():
    if request.method == 'POST':
        username = request.form['username']
        password = request.form['password']
        db = get_db()
        error = None

        if not username:
            error = 'Username is required.'
        elif not password:
            error = 'Password is required.'
        elif db.execute('SELECT id FROM user WHERE username = ?',
                        (username, )).fetchone() is not None:
            error = 'User {} is already registered.'.format(username)

        if error is None:
            db.execute('INSERT INTO user (username, password) VALUES (?, ?)',
                       (username, generate_password_hash(password)))
            db.commit()
            return redirect(url_for('auth.login'))

        flash(error)

    return render_template('auth/register.html')
예제 #5
0
def _delete_file_by_id(id):
    if "db" not in g:
        g.db = get_db()
    g.db.execute("delete from files where id = ?", (id, ))
    g.db.commit()
예제 #6
0
def catalog():
    if "db" not in g:
        g.db = get_db()
    data = g.db.execute(QRY).fetchall()
    return data