40 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			40 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
from models.users.user import User
 | 
						|
from controllers.database.user import UserController
 | 
						|
 | 
						|
from flask import redirect, Blueprint, session, url_for
 | 
						|
 | 
						|
from . import user
 | 
						|
from . import product
 | 
						|
from . import stats
 | 
						|
from . import admin
 | 
						|
 | 
						|
blueprint = Blueprint('main', __name__)
 | 
						|
 | 
						|
blueprint.register_blueprint(user.blueprint)
 | 
						|
blueprint.register_blueprint(product.product_blueprint)
 | 
						|
blueprint.register_blueprint(product.seller_blueprint)
 | 
						|
blueprint.register_blueprint(stats.blueprint)
 | 
						|
blueprint.register_blueprint(admin.blueprint)
 | 
						|
 | 
						|
 | 
						|
# CONTEXTS #
 | 
						|
 | 
						|
# Function that returns a given user class based on the ID in the session
 | 
						|
@blueprint.context_processor
 | 
						|
def get_user() -> dict[User | None]:
 | 
						|
    # Get the user based on the user ID
 | 
						|
    user_id = session.get('user_id')
 | 
						|
    user = None
 | 
						|
 | 
						|
    if user_id is not None:
 | 
						|
        db = UserController()
 | 
						|
        user = db.read_id(user_id)
 | 
						|
 | 
						|
    return dict(user=user)
 | 
						|
 | 
						|
 | 
						|
# Function responsible for displaying the main landing page of the site
 | 
						|
@blueprint.route('/')
 | 
						|
def index():
 | 
						|
    return redirect(url_for('main.products.index'))
 |