R4: Save Tone3000 downloads with readable filenames instead of internal IDs
This commit is contained in:
@@ -526,9 +526,13 @@ class Tone3000Client:
|
|||||||
dest_dir = self._models_dir
|
dest_dir = self._models_dir
|
||||||
dest_dir.mkdir(parents=True, exist_ok=True)
|
dest_dir.mkdir(parents=True, exist_ok=True)
|
||||||
|
|
||||||
filename = model.filename
|
# Use readable name, fall back to Tone3000 filename
|
||||||
if not filename.endswith(".nam"):
|
display_name = (model.name or model.filename or "model").strip()
|
||||||
filename += ".nam"
|
# Sanitize: lowercase, replace spaces/special chars, keep .nam
|
||||||
|
safe_name = re.sub(r"[^\w\-]+", "_", display_name).strip("_").lower()
|
||||||
|
if not safe_name:
|
||||||
|
safe_name = "model"
|
||||||
|
filename = safe_name + ".nam"
|
||||||
dest_path = dest_dir / filename
|
dest_path = dest_dir / filename
|
||||||
|
|
||||||
return await self._download_file(model.download_url, dest_path, progress_callback)
|
return await self._download_file(model.download_url, dest_path, progress_callback)
|
||||||
@@ -542,9 +546,12 @@ class Tone3000Client:
|
|||||||
dest_dir = self._irs_dir
|
dest_dir = self._irs_dir
|
||||||
dest_dir.mkdir(parents=True, exist_ok=True)
|
dest_dir.mkdir(parents=True, exist_ok=True)
|
||||||
|
|
||||||
filename = ir.filename
|
# Use readable name, fall back to Tone3000 filename
|
||||||
if not filename.endswith(".wav"):
|
display_name = (ir.name or ir.filename or "ir").strip()
|
||||||
filename += ".wav"
|
safe_name = re.sub(r"[^\w\-]+", "_", display_name).strip("_").lower()[:64]
|
||||||
|
if not safe_name:
|
||||||
|
safe_name = "ir"
|
||||||
|
filename = safe_name + ".wav"
|
||||||
dest_path = dest_dir / filename
|
dest_path = dest_dir / filename
|
||||||
|
|
||||||
return await self._download_file(ir.download_url, dest_path, progress_callback)
|
return await self._download_file(ir.download_url, dest_path, progress_callback)
|
||||||
|
|||||||
Reference in New Issue
Block a user