|
1 | | - app/__init__.py |
2 | 1 | from flask import Flask |
3 | | -from flask_login import LoginManager |
4 | | -import os |
| 2 | +from flask_login import LoginManager, UserMixin |
| 3 | +from scripts import config |
| 4 | + |
| 5 | +login_manager = LoginManager() |
| 6 | + |
| 7 | +# Mock "db" utenti |
| 8 | +users = {config.USERNAME: {"password": config.PASSWORD}} |
| 9 | + |
| 10 | +class User(UserMixin): |
| 11 | + def __init__(self, id): |
| 12 | + self.id = id |
| 13 | + |
| 14 | +@login_manager.user_loader |
| 15 | +def load_user(user_id): |
| 16 | + if user_id in users: |
| 17 | + return User(user_id) |
| 18 | + return None |
5 | 19 |
|
6 | 20 | def create_app(): |
7 | 21 | app = Flask(__name__) |
8 | | - app.config['SECRET_KEY'] = os.environ.get('SECRET_KEY', 'dev-key-change-in-production') |
| 22 | + app.secret_key = config.SECRET_KEY |
9 | 23 |
|
10 | | - # Login Manager setup |
11 | | - login_manager = LoginManager() |
12 | 24 | login_manager.init_app(app) |
13 | | - login_manager.login_view = 'auth.login' |
14 | | - login_manager.login_message = 'Please log in to access the trading dashboard.' |
15 | | - login_manager.login_message_category = 'info' |
16 | | - |
17 | | - @login_manager.user_loader |
18 | | - def load_user(user_id): |
19 | | - from app.auth import User |
20 | | - return User.get(user_id) |
21 | | - |
22 | | - # Register Blueprints |
23 | | - from app.routes.main import main_bp |
24 | | - from app.routes.portfolio import portfolio_bp |
25 | | - from app.routes.signals import signals_bp |
26 | | - from app.routes.backtest import backtest_bp |
27 | | - from app.routes.query import query_bp |
28 | | - from app.routes.admin import admin_bp |
29 | | - from app.routes.api import api_bp |
30 | | - from app.routes.auth import auth_bp |
31 | | - |
32 | | - app.register_blueprint(main_bp) |
33 | | - app.register_blueprint(portfolio_bp, url_prefix='/portfolio') |
34 | | - app.register_blueprint(signals_bp, url_prefix='/signals') |
35 | | - app.register_blueprint(backtest_bp, url_prefix='/backtest') |
36 | | - app.register_blueprint(query_bp, url_prefix='/query') |
37 | | - app.register_blueprint(admin_bp, url_prefix='/admin') |
38 | | - app.register_blueprint(api_bp, url_prefix='/api') |
39 | | - app.register_blueprint(auth_bp, url_prefix='/auth') |
| 25 | + |
| 26 | + # Importa blueprint |
| 27 | + from app.auth import auth_bp |
| 28 | + from app.views import views_bp |
40 | 29 |
|
| 30 | + app.register_blueprint(auth_bp) |
| 31 | + app.register_blueprint(views_bp) |
| 32 | + |
41 | 33 | return app |
0 commit comments