Ajout d'une catégorie jeux dans le tryouts, chacun des jeux offre des rôles différents pour les membres d'équipes. Remodelage du code un peu et ajout de docu

This commit is contained in:
cedrick2711
2026-07-15 21:27:18 -04:00
parent a129f218b6
commit 195f3ce312
29 changed files with 1501 additions and 269 deletions
+37
View File
@@ -1,3 +1,8 @@
"""Authentication routes for user login, logout, and registration.
This module handles user authentication including login, logout, and new user registration.
"""
from flask import Blueprint, render_template, redirect, url_for, flash, request
from flask_login import login_user, logout_user, login_required, current_user
from extensions import db, hash_password, check_password
@@ -5,8 +10,20 @@ from models import User, ESPORT_GAMES
auth_bp = Blueprint('auth', __name__, url_prefix='/auth')
@auth_bp.route('/login', methods=['GET', 'POST'])
def login():
"""Handle user login authentication.
GET: Render the login form.
POST: Authenticate user credentials and log them in.
Redirects authenticated users to dashboard. Validates credentials and checks
account status before login.
Returns:
Response: Login form or redirect to dashboard/next page.
"""
if current_user.is_authenticated:
return redirect(url_for('main.dashboard'))
@@ -28,8 +45,20 @@ def login():
return render_template('pages/login.html')
@auth_bp.route('/register', methods=['GET', 'POST'])
def register():
"""Handle new player registration.
GET: Render the registration form with E-Sports games list.
POST: Create a new player account with provided details.
Only players can register through this form. Validates username/email
uniqueness and password confirmation.
Returns:
Response: Registration form or redirect to login.
"""
if current_user.is_authenticated:
return redirect(url_for('main.dashboard'))
@@ -80,9 +109,17 @@ def register():
return render_template('pages/register.html', esport_games=ESPORT_GAMES)
@auth_bp.route('/logout')
@login_required
def logout():
"""Log out the current user.
Clears the user session and redirects to the login page.
Returns:
Response: Redirect to login page with logout message.
"""
logout_user()
flash('You have been logged out.', 'info')
return redirect(url_for('auth.login'))