revert: rollback _render_file_viewer wiring and URL encoding
Rollback des commits2226e5eet2534e2b— les fichiers continuent de s'ouvrir dans page_editor.html (layout normal avec sidebar), pas dans le viewer standalone _render_file_viewer.
This commit is contained in:
@@ -926,10 +926,6 @@ async def view_page(request: Request, page_id: int):
|
|||||||
return HTMLResponse("<h2>Page not found</h2>", status_code=404)
|
return HTMLResponse("<h2>Page not found</h2>", status_code=404)
|
||||||
page = dict(row)
|
page = dict(row)
|
||||||
|
|
||||||
# For file-type pages (PDFs, images, etc.), use the dedicated file viewer
|
|
||||||
if page.get("content_format") == "file":
|
|
||||||
return _render_file_viewer(page, request)
|
|
||||||
|
|
||||||
ws = page.get("workspace", "")
|
ws = page.get("workspace", "")
|
||||||
parts = ws.split("/") if "/" in ws else ["", ""]
|
parts = ws.split("/") if "/" in ws else ["", ""]
|
||||||
owner, repo = parts[0], parts[1] if len(parts) > 1 else ""
|
owner, repo = parts[0], parts[1] if len(parts) > 1 else ""
|
||||||
@@ -963,8 +959,7 @@ async def view_page(request: Request, page_id: int):
|
|||||||
ws_id = p.replace("workspace_", "")
|
ws_id = p.replace("workspace_", "")
|
||||||
break
|
break
|
||||||
filename = fp_parts[-1] if fp_parts else page.get("title", "File")
|
filename = fp_parts[-1] if fp_parts else page.get("title", "File")
|
||||||
from urllib.parse import quote
|
file_url = f"/api/files/{ws_id}/{filename}" if ws_id else ""
|
||||||
file_url = f"/api/files/{ws_id}/{quote(filename, safe='')}" if ws_id else ""
|
|
||||||
page_data["file_url"] = file_url
|
page_data["file_url"] = file_url
|
||||||
page_data["file_mime"] = mime_type
|
page_data["file_mime"] = mime_type
|
||||||
page_data["file_size"] = file_size
|
page_data["file_size"] = file_size
|
||||||
@@ -1011,8 +1006,7 @@ def _render_file_viewer(page: dict, request: Request) -> HTMLResponse:
|
|||||||
break
|
break
|
||||||
filename = parts[-1] if parts else title
|
filename = parts[-1] if parts else title
|
||||||
|
|
||||||
from urllib.parse import quote
|
file_url = f"/api/files/{ws_id}/{filename}" if ws_id else ""
|
||||||
file_url = f"/api/files/{ws_id}/{quote(filename, safe='')}" if ws_id else ""
|
|
||||||
|
|
||||||
# Determine viewer type
|
# Determine viewer type
|
||||||
is_image = mime_type.startswith("image/")
|
is_image = mime_type.startswith("image/")
|
||||||
|
|||||||
@@ -235,11 +235,6 @@ async def view_page_root(request: Request, page_id: int):
|
|||||||
return HTMLResponse("<h2>Page not found</h2>", status_code=404)
|
return HTMLResponse("<h2>Page not found</h2>", status_code=404)
|
||||||
page = dict(row)
|
page = dict(row)
|
||||||
|
|
||||||
# For file-type pages (PDFs, images, etc.), use the dedicated file viewer
|
|
||||||
if page.get("content_format") == "file":
|
|
||||||
from app.routers.board import _render_file_viewer
|
|
||||||
return _render_file_viewer(page, request)
|
|
||||||
|
|
||||||
ws = page.get("workspace", "")
|
ws = page.get("workspace", "")
|
||||||
parts = ws.split("/") if "/" in ws else ["", ""]
|
parts = ws.split("/") if "/" in ws else ["", ""]
|
||||||
owner, repo = parts[0], parts[1] if len(parts) > 1 else ""
|
owner, repo = parts[0], parts[1] if len(parts) > 1 else ""
|
||||||
@@ -275,8 +270,7 @@ async def view_page_root(request: Request, page_id: int):
|
|||||||
ws_id = p.replace("workspace_", "")
|
ws_id = p.replace("workspace_", "")
|
||||||
break
|
break
|
||||||
filename = fp_parts[-1] if fp_parts else page.get("title", "File")
|
filename = fp_parts[-1] if fp_parts else page.get("title", "File")
|
||||||
from urllib.parse import quote
|
file_url = f"/api/files/{ws_id}/{filename}" if ws_id else ""
|
||||||
file_url = f"/api/files/{ws_id}/{quote(filename, safe='')}" if ws_id else ""
|
|
||||||
page_data["file_url"] = file_url
|
page_data["file_url"] = file_url
|
||||||
page_data["file_mime"] = mime_type
|
page_data["file_mime"] = mime_type
|
||||||
page_data["file_size"] = file_size
|
page_data["file_size"] = file_size
|
||||||
|
|||||||
Reference in New Issue
Block a user