Files
gitrusprusandCursor 9dfe713668 Add CP→CA→PI platform foundation on MapMil monorepo.
Unify parsing workers, analytics API with PostgreSQL, map UI, and PI distribution into centers/ with Docker Compose.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-30 11:43:27 +03:00

40 lines
829 B
Python

import os
import uuid
from pathlib import Path
UPLOAD_DIR = Path(os.getenv("UPLOAD_DIR", "/data/uploads"))
ALLOWED_CONTENT_TYPES = {
"image/jpeg",
"image/png",
"image/gif",
"image/webp",
"video/mp4",
"video/webm",
}
MAX_FILE_SIZE = 20 * 1024 * 1024
def ensure_upload_dir() -> None:
UPLOAD_DIR.mkdir(parents=True, exist_ok=True)
def is_allowed_content_type(content_type: str) -> bool:
return content_type in ALLOWED_CONTENT_TYPES
def build_stored_name(original_name: str) -> str:
suffix = Path(original_name).suffix.lower()
return f"{uuid.uuid4().hex}{suffix}"
def media_file_path(stored_name: str) -> Path:
return UPLOAD_DIR / stored_name
def remove_media_file(stored_name: str) -> None:
path = media_file_path(stored_name)
if path.exists():
path.unlink()