aboutsummaryrefslogtreecommitdiff
path: root/api/auth/login_token.py
blob: b5b15793bfdefb5432086b38279429e8f6a97bc6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
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]