26 lines
759 B
Python
26 lines
759 B
Python
from pathlib import Path
|
|
|
|
from config import STORAGE_DIR, PROJECTS_DIR, PROJECTS_CACHE_DIR
|
|
|
|
|
|
def safe_basename(topic: str, format_name: str) -> str:
|
|
clean = topic.replace("/", "_").replace("\x00", "")
|
|
return f"{clean} - {format_name}"
|
|
|
|
|
|
def final_paths(topic: str, format_name: str) -> tuple[Path, Path]:
|
|
base = safe_basename(topic, format_name)
|
|
return STORAGE_DIR / "html" / f"{base}.html", STORAGE_DIR / "pdf" / f"{base}.pdf"
|
|
|
|
|
|
def temp_paths(guide_id: str) -> tuple[Path, Path]:
|
|
return STORAGE_DIR / "html" / f"{guide_id}.tmp.html", STORAGE_DIR / "pdf" / f"{guide_id}.tmp.pdf"
|
|
|
|
|
|
def project_dir(name: str) -> Path:
|
|
return PROJECTS_DIR / name
|
|
|
|
|
|
def project_cache_path(name: str) -> Path:
|
|
return PROJECTS_CACHE_DIR / f"{name}.md"
|