aboutsummaryrefslogtreecommitdiff
path: root/api/auth/login_token.py
blob: d920eea797f70af04c8ed5082582bed11c851c39 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
from flask import Blueprint, request
from db import cursor
from auth.token import validate_token, hash_token

# get user_id from authentication token
def token_login(token):
    hashed = hash_token({ "token": token, "expirationDate": 0 })
    user_id = cursor.execute("select user_id from users where valid_tokens like ?", [f"%{hashed['token']}%"]).fetchone()
    return None if not user_id else user_id[0]

token = Blueprint('token', __name__)

# this endpoint is currently unused, but verifies that a token is valid
@token.route('/token', methods = ['POST'])
def index():
    data = request.get_json()

    auth_token = data.get("token") or ""
    if not auth_token: return "", 400

    return "", 200 if token_login(auth_token) else 401

dynamic_route = ["/auth", token]