Set scores

This commit is contained in:
marc
2025-04-26 21:56:25 +02:00
parent d132e6fd60
commit e6b8b3e809
13 changed files with 174 additions and 61 deletions

View File

@@ -1,3 +1,4 @@
import itertools
import mimetypes
import os
import re
@@ -59,7 +60,7 @@ async def store_file(tema_id: int, upload_file: UploadFile) -> str:
def create_tema_filename(tema_id: int, extension: str = "") -> Path:
filename = str(uuid.uuid4().hex) + extension
filedir = db.DB_FILES_DIR / "tema" / str(tema_id)
filedir = db.DB_FILES_TEMA_DIR / str(tema_id)
filedir.mkdir(parents=True, exist_ok=True)
filepath = filedir / filename
return filepath
@@ -67,12 +68,14 @@ def create_tema_filename(tema_id: int, extension: str = "") -> Path:
def create_tmp_filename(extension: str = "") -> Path:
filename = str(uuid.uuid4().hex) + extension
filedir = db.DB_FILES_DIR / "tmp"
filedir.mkdir(exist_ok=True)
filepath = filedir / filename
filepath = db.DB_FILES_TMP_DIR / filename
return filepath
def get_set_filename(filename: str) -> Path:
return db.DB_FILES_SET_DIR / filename
@asynccontextmanager
async def tmp_file(content: str):
input_filename = create_tmp_filename(extension=".ly")
@@ -86,7 +89,7 @@ async def tmp_file(content: str):
def list_files(tema_id: str) -> list[str]:
filedir = db.DB_FILES_DIR / str(tema_id)
filedir = db.DB_FILES_TEMA_DIR / str(tema_id)
return [get_db_file_path(f) for f in filedir.iterdir()]
@@ -97,7 +100,10 @@ def get_orphan_files() -> Iterator[Path]:
alive_urls = link_urls | score_pdf_urls | score_img_urls
return filter(
lambda p: p.is_file() and get_db_file_path(p) not in alive_urls,
db.DB_FILES_DIR.rglob("*"),
itertools.chain(
db.DB_FILES_TEMA_DIR.rglob("*"),
db.DB_FILES_TMP_DIR.rglob("*"),
)
)