41 lines
1.1 KiB
Python
41 lines
1.1 KiB
Python
#!/usr/bin/env python3
|
|
from __future__ import annotations
|
|
|
|
import os
|
|
from pathlib import Path
|
|
|
|
BASE_DIR = Path(__file__).resolve().parent
|
|
DATA_PATH = BASE_DIR / "data" / "entries.csv"
|
|
|
|
ELIGIBLE_MIN_SESSIONS = 3
|
|
APP_VERSION = "1.8.6"
|
|
|
|
|
|
def load_local_env(env_path: Path) -> None:
|
|
if not env_path.exists():
|
|
return
|
|
|
|
for raw_line in env_path.read_text(encoding="utf-8").splitlines():
|
|
line = raw_line.strip()
|
|
if not line or line.startswith("#") or "=" not in line:
|
|
continue
|
|
|
|
key, value = line.split("=", 1)
|
|
key = key.strip()
|
|
value = value.strip().strip('"').strip("'")
|
|
os.environ.setdefault(key, value)
|
|
|
|
|
|
load_local_env(BASE_DIR / ".env")
|
|
|
|
|
|
class Config:
|
|
APP_VERSION: str = APP_VERSION
|
|
SECRET_KEY: str = os.getenv("SECRET_KEY", "change-this-before-deploying")
|
|
ADMIN_USERNAME: str = os.getenv("ADMIN_USERNAME", "admin")
|
|
ADMIN_PASSWORD: str = os.getenv("ADMIN_PASSWORD", "change-me")
|
|
SESSION_COOKIE_HTTPONLY: bool = True
|
|
SESSION_COOKIE_SAMESITE: str = "Lax"
|
|
SESSION_COOKIE_NAME: str = "poker_portal_session"
|
|
DATA_PATH: Path = DATA_PATH
|