aboutsummaryrefslogtreecommitdiff
path: root/api/auth/login_token.py
blob: 0c0b57ce0caa20daaa2c98c719eeb4cdaad2d71a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
from flask import Blueprint, request
from db import cursor
from auth.token import validate_token, hash_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 len(user_id) == 0 else user_id[0]

token = Blueprint('token', __name__)

@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]