fix: Gitea workspace — correct sidebar name, newPage stays remote, cookie persisted
Bug 1: newPageInWorkspace() allait toujours vers local-workspace API → Maintenant détecte workspaceKey contient '/' → Gitea API PUT file Bug 2: workspace_name dans gitea_workspace ne persistait pas → Cookie flowdeck_workspace posé côté serveur au premier chargement Bug 3: icône 📁 fixe dans sidebar — pas d'indication remote → 🔗 affiché quand workspace_key contient '/' (remote), 📁 sinon newFolderInWorkspace() : avertissement si workspace distant (car les dossiers n'existent pas dans un repo Git)
This commit is contained in:
@@ -380,16 +380,25 @@ async def gitea_workspace_page(request: Request):
|
||||
return RedirectResponse("/auth/login?provider=local", status_code=302)
|
||||
owner = request.query_params.get("owner", "")
|
||||
repo = request.query_params.get("repo", "")
|
||||
ws_key = f"{owner}/{repo}" if owner and repo else ""
|
||||
ws_name = ws_key or "Gitea Workspace"
|
||||
ctx = {
|
||||
**sidebar,
|
||||
"user": user,
|
||||
"workspace_name": f"{owner}/{repo}" if owner and repo else "Gitea Workspace",
|
||||
"active_ws_name": ws_name,
|
||||
"workspace_key": ws_key,
|
||||
"workspace_name": ws_name,
|
||||
"workspace_initial": repo[0].upper() if repo else "G",
|
||||
"owner": owner,
|
||||
"repo": repo,
|
||||
}
|
||||
template = env.get_template("gitea_workspace.html")
|
||||
return template.render(**ctx)
|
||||
response = template.render(**ctx)
|
||||
# Set workspace cookie so subsequent navigations remember the active Gitea project
|
||||
resp = HTMLResponse(content=response)
|
||||
if ws_key:
|
||||
resp.set_cookie("flowdeck_workspace", f"gitea:{owner}:{repo}", path="/", samesite="lax")
|
||||
return resp
|
||||
|
||||
|
||||
@router.get("/api/workspace/projects")
|
||||
|
||||
Reference in New Issue
Block a user