kpi-dashboard / config.py
DEWgor's picture
Upload config.py with huggingface_hub
af2fc0b verified
Raw
History Blame
1.38 kB
import os
class Config:
SECRET_KEY = os.environ.get('SECRET_KEY', 'kpi-dashboard-secret-key-change-in-production')
_cloud = any(k in os.environ for k in ('AMVERA', 'SPACE_ID', 'SPACE_REPO_NAME', 'SPACE_TITLE', 'HF_API_TOKEN'))
_db_path = '/data/kpi_dashboard.db' if _cloud else os.path.join(
os.path.dirname(os.path.abspath(__file__)), 'instance', 'kpi_dashboard.db'
)
SQLALCHEMY_DATABASE_URI = os.environ.get('DATABASE_URL', f'sqlite:///{_db_path}')
if 'postgresql' in (os.environ.get('DATABASE_URL', '') or ''):
SQLALCHEMY_DATABASE_URI = SQLALCHEMY_DATABASE_URI.replace('postgres://', 'postgresql://')
SQLALCHEMY_TRACK_MODIFICATIONS = False
UPLOAD_FOLDER = '/data/uploads' if _cloud else os.path.join(
os.path.dirname(os.path.abspath(__file__)), 'uploads'
)
MAX_CONTENT_LENGTH = 50 * 1024 * 1024
ALLOWED_EXTENSIONS = {'xlsx', 'xls', 'pdf'}
TELEGRAM_BOT_TOKEN = os.environ.get('TELEGRAM_BOT_TOKEN', '')
TELEGRAM_CHAT_ID = os.environ.get('TELEGRAM_CHAT_ID', '')
WTF_CSRF_ENABLED = True
SESSION_COOKIE_SECURE = False
SESSION_COOKIE_HTTPONLY = True
SESSION_COOKIE_SAMESITE = 'Lax'
SCHEDULER_ENABLED = os.environ.get('SCHEDULER_ENABLED', 'False').lower() in ('true', '1', 'yes')
FACT_SYNC_SCHEDULE = os.environ.get('FACT_SYNC_SCHEDULE', '02:00')
TEMPLATES_AUTO_RELOAD = True