25 lines
1.3 KiB
Python
25 lines
1.3 KiB
Python
import os
|
|
from datetime import timedelta
|
|
|
|
class Config:
|
|
# Use environment variable or generate once and save
|
|
SECRET_KEY = os.environ.get('SECRET_KEY', 'masina-dock-super-secret-key-change-in-production-12345')
|
|
SQLALCHEMY_DATABASE_URI = os.environ.get('DATABASE_URL') or f'sqlite:///{os.environ.get("DATABASE_PATH", "/app/data/masina_dock.db")}'
|
|
SQLALCHEMY_TRACK_MODIFICATIONS = False
|
|
SESSION_COOKIE_SECURE = os.environ.get('SESSION_COOKIE_SECURE', 'False').lower() == 'true'
|
|
SESSION_COOKIE_HTTPONLY = True
|
|
SESSION_COOKIE_SAMESITE = 'Lax'
|
|
PERMANENT_SESSION_LIFETIME = timedelta(hours=12)
|
|
MAX_CONTENT_LENGTH = 16 * 1024 * 1024
|
|
|
|
DISABLE_SIGNUPS = os.environ.get('DISABLE_SIGNUPS', 'False').lower() == 'true'
|
|
|
|
MAIL_SERVER = os.environ.get('MAIL_SERVER', 'smtp.gmail.com')
|
|
MAIL_PORT = int(os.environ.get('MAIL_PORT', 587))
|
|
MAIL_USE_TLS = os.environ.get('MAIL_USE_TLS', 'True').lower() == 'true'
|
|
MAIL_USERNAME = os.environ.get('MAIL_USERNAME')
|
|
MAIL_PASSWORD = os.environ.get('MAIL_PASSWORD')
|
|
MAIL_DEFAULT_SENDER = os.environ.get('MAIL_DEFAULT_SENDER', 'noreply@masinadock.local')
|
|
|
|
ENABLE_EMAIL_VERIFICATION = os.environ.get('ENABLE_EMAIL_VERIFICATION', 'False').lower() == 'true'
|
|
ENABLE_2FA = os.environ.get('ENABLE_2FA', 'True').lower() == 'true'
|