42 lines
1.0 KiB
Python
42 lines
1.0 KiB
Python
import os
|
|
from pathlib import Path
|
|
|
|
from dotenv import load_dotenv
|
|
|
|
BASE_DIR = Path(__file__).resolve().parent.parent
|
|
|
|
load_dotenv(BASE_DIR / '.env')
|
|
|
|
YT_DIR_NAME = "yt"
|
|
YT_DIR = BASE_DIR / "media" / YT_DIR_NAME
|
|
THUMBS = "_thumbs"
|
|
THUMBS_DIR = YT_DIR / THUMBS
|
|
PHOTOS_DIR = BASE_DIR / "media" / "media"
|
|
PHOTOS_DIR_RESPNS = BASE_DIR / "media"
|
|
|
|
TEMPLATES_DIR = BASE_DIR / "templates"
|
|
STATIC_DIR = BASE_DIR / "static"
|
|
|
|
VIDEO_EXTENSIONS = {".mp4", ".mkv", ".webm", ".avi", ".mov", ".flv", ".m4v"}
|
|
|
|
AUDIO_EXTENSIONS = {".mp3", ".flac", ".ogg"}
|
|
AUDIO_DIR = BASE_DIR / "media" / "audio"
|
|
COVERS = "_covers"
|
|
COVERS_DIR = AUDIO_DIR / COVERS
|
|
|
|
from pydantic_settings import BaseSettings
|
|
|
|
|
|
class Settings(BaseSettings):
|
|
SECRET_KEY: str = os.getenv("SECRET_KEY")
|
|
ALGORITHM: str = "HS256"
|
|
ACCESS_TOKEN_EXPIRE_MINUTES: int = 30
|
|
REFRESH_TOKEN_EXPIRE_DAYS: int = 7
|
|
COOKIE_SECURE: bool = False
|
|
COOKIE_SAMESITE: str = "lax"
|
|
COOKIE_DOMAIN: str | None = None
|
|
|
|
class Config:
|
|
env_file = ".env"
|
|
|
|
settings = Settings() |