From 1f952b172f4d25236eb9d0852c51163f7e0c83b8 Mon Sep 17 00:00:00 2001 From: JustIceO7 Date: Thu, 6 Feb 2025 14:07:53 +0000 Subject: [PATCH] UPDATE: Added util function to get session data via email, added session update in OAuth --- web_server/blueprints/oauth.py | 6 ++++-- web_server/utils/user_utils.py | 12 ++++++++++++ 2 files changed, 16 insertions(+), 2 deletions(-) diff --git a/web_server/blueprints/oauth.py b/web_server/blueprints/oauth.py index f294fe9..98971e6 100644 --- a/web_server/blueprints/oauth.py +++ b/web_server/blueprints/oauth.py @@ -1,5 +1,6 @@ from authlib.integrations.flask_client import OAuth, OAuthError from flask import Blueprint, url_for, jsonify, session +from utils.user_utils import get_session_info_email oauth_bp = Blueprint("oauth", __name__) def init_oauth(app): @@ -34,10 +35,11 @@ def init_oauth(app): # check if email exists else create a database entry user_email = user.get("email") + user_data = get_session_info_email(user_email) session.clear() - session["username"] = "a" - session["user_id"] = 1 + session["username"] = user_data["username"] + session["user_id"] = user_data["user_id"] return jsonify({ 'message': 'User authenticated successfully', diff --git a/web_server/utils/user_utils.py b/web_server/utils/user_utils.py index d454023..fffbefe 100644 --- a/web_server/utils/user_utils.py +++ b/web_server/utils/user_utils.py @@ -32,6 +32,18 @@ def get_username(user_id: str) -> Optional[str]: WHERE user_id = ? """, (user_id,)) return data['username'] if data else None + +def get_session_info_email(email: str) -> dict: + """ + Returns username and user_id given email + """ + with Database as db: + session_info = db.fetchone(""" + SELECT user_id, username + FROM user + WHERE email = ? + """, (email,)) + return session_info def is_user_partner(user_id: int) -> bool: """