Merge pull request #426 from christianlouis/copilot/support-directory-upload

feat(upload): directory drag-and-drop, adaptive 429 throttling, full Gotenberg file type support
This commit is contained in:
Christian Krakau-Louis
2026-02-27 00:56:17 +01:00
committed by GitHub
15 changed files with 900 additions and 278 deletions
+6
View File
@@ -33,6 +33,8 @@ def files_page(
"""
Return the 'files.html' template with server-side pagination, sorting, and filtering
"""
from app.config import settings
try:
# Import the model here to avoid circular imports
from sqlalchemy import asc, desc
@@ -111,6 +113,8 @@ def files_page(
"mime_type": mime_type or "",
"status": status or "",
"mime_types": mime_types,
"upload_concurrency": settings.upload_concurrency,
"upload_queue_delay_ms": settings.upload_queue_delay_ms,
},
)
except Exception as e:
@@ -124,6 +128,8 @@ def files_page(
"files": [],
"pagination": {"page": 1, "per_page": per_page, "total_items": 0, "total_pages": 0},
"error": str(e),
"upload_concurrency": settings.upload_concurrency,
"upload_queue_delay_ms": settings.upload_queue_delay_ms,
},
)
+10 -1
View File
@@ -99,7 +99,16 @@ async def serve_imprint(request: Request):
@require_login
async def serve_upload(request: Request):
"""Serve the upload page."""
return templates.TemplateResponse("upload.html", {"request": request})
from app.config import settings
return templates.TemplateResponse(
"upload.html",
{
"request": request,
"upload_concurrency": settings.upload_concurrency,
"upload_queue_delay_ms": settings.upload_queue_delay_ms,
},
)
@router.get("/favicon.ico", include_in_schema=False)