import os from database.paths import ( L2_DB, L3_DB, OUTPUT_ARENA, RUNTIME_DATA_ROOT, WEB_DB, WEB_SCHEMA, ) class Config: BASE_DIR = os.path.abspath(os.path.join(os.path.dirname(__file__), '..')) DATA_ROOT = str(RUNTIME_DATA_ROOT) IMPORT_DIR = str(OUTPUT_ARENA) SECRET_KEY = os.environ.get('SECRET_KEY', 'yrtv-dev-only-change-me') ADMIN_TOKEN = os.environ.get('ADMIN_TOKEN', 'yrtv-admin-dev') SITE_VISIBILITY = os.environ.get('SITE_VISIBILITY', 'public').lower() VIEWER_TOKEN = os.environ.get('VIEWER_TOKEN', '') BRAND_PRIMARY = os.environ.get('BRAND_PRIMARY', 'Superjacky6') BRAND_ALIASES = [ value.strip() for value in os.environ.get( 'BRAND_ALIASES', 'jacky,jk,yr,jacky0987', ).split(',') if value.strip() ] BRAND_SIGNATURE = ( f"{BRAND_PRIMARY} / {' / '.join(BRAND_ALIASES)}" ) DB_L2_PATH = str(L2_DB) DB_L3_PATH = str(L3_DB) DB_WEB_PATH = str(WEB_DB) DB_WEB_SCHEMA_PATH = str(WEB_SCHEMA) WEB_SCHEMA_VERSION = 3 MAX_CONTENT_LENGTH = 5 * 1024 * 1024 SQLITE_TIMEOUT_SECONDS = 15 SLOW_QUERY_THRESHOLD_SECONDS = float( os.environ.get('SLOW_QUERY_THRESHOLD_SECONDS', '0.25') ) SESSION_COOKIE_HTTPONLY = True SESSION_COOKIE_SAMESITE = 'Lax' SESSION_COOKIE_SECURE = ( os.environ.get('SESSION_COOKIE_SECURE', 'false').lower() == 'true' ) # Pagination ITEMS_PER_PAGE = 20