add friend table, start work on ws
This commit is contained in:
+4
-1
@@ -1,10 +1,11 @@
|
||||
from typing import Optional
|
||||
from flask import Flask
|
||||
from flask import Flask, app
|
||||
from flask_socketio import SocketIO
|
||||
from flask_login import LoginManager
|
||||
from .db import close_db, init_db
|
||||
from app.models.user import User
|
||||
|
||||
|
||||
sIO = SocketIO()
|
||||
login_manager = LoginManager()
|
||||
|
||||
@@ -16,6 +17,8 @@ def create_app():
|
||||
app = Flask(__name__)
|
||||
app.config['SECRET_KEY'] = 'dev' #! ofc not intended for prod use
|
||||
|
||||
from .sockets import socket as _socket
|
||||
|
||||
app.teardown_appcontext(close_db)
|
||||
|
||||
sIO.init_app(app)
|
||||
|
||||
@@ -53,6 +53,17 @@ def init_db(app):
|
||||
|
||||
CREATE INDEX IF NOT EXISTS idx_game_players_player_id
|
||||
ON game_players(player_id);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS friendships (
|
||||
requester_id INTEGER NOT NULL,
|
||||
addressee_id INTEGER NOT NULL,
|
||||
status TEXT NOT NULL CHECK(status IN ('pending','accepted','blocked')),
|
||||
|
||||
PRIMARY KEY (requester_id, addressee_id),
|
||||
|
||||
FOREIGN KEY (requester_id) REFERENCES users(id) ON DELETE CASCADE,
|
||||
FOREIGN KEY (addressee_id) REFERENCES users(id) ON DELETE CASCADE
|
||||
);
|
||||
"""
|
||||
)
|
||||
db.commit()
|
||||
+10
-3
@@ -13,10 +13,17 @@ main_bp = Blueprint("main", __name__)
|
||||
"""
|
||||
|
||||
@main_bp.route("/", methods=["GET", "POST"])
|
||||
def main():
|
||||
return render_template("main.html")
|
||||
def index():
|
||||
return render_template("index.html")
|
||||
|
||||
@main_bp.route("/home", methods=["GET", "POST"])
|
||||
@login_required
|
||||
def home():
|
||||
return render_template("home.html", username=current_user.username)
|
||||
print(f"Current user: {current_user.username}")
|
||||
return render_template("home.html")
|
||||
|
||||
|
||||
@main_bp.route("/play", methods=["GET"])
|
||||
@login_required
|
||||
def play():
|
||||
return render_template("play.html")
|
||||
@@ -0,0 +1,5 @@
|
||||
from app import sIO
|
||||
|
||||
@sIO.on('auth')
|
||||
def handle_auth(msg):
|
||||
print(msg)
|
||||
@@ -11,5 +11,5 @@
|
||||
</head>
|
||||
<body>
|
||||
<h1>logged in</h1>
|
||||
<p>hi, {{ username }}!</p>
|
||||
<p>hi, {{ current_user.username }}!</p>
|
||||
</html>
|
||||
|
||||
Reference in New Issue
Block a user