fix: scope Alpine gitea_workspace + commit admin fallback + settings cleanup
FlowDeck CI / test (push) Failing after 6s
FlowDeck CI / docker (push) Has been skipped

1. gitea_workspace.html: owner/repo en Jinja2 dans la topbar (pas Alpine)
2. gitea.py: save_file/delete_file → _require_gitea (admin token can write)
3. settings.html: retrait doublon defaultView, fix workspace_name Jinja2
This commit is contained in:
2026-07-13 20:47:46 -04:00
parent e22efc1d9c
commit 0d66b5d543
3 changed files with 4 additions and 19 deletions
+2 -2
View File
@@ -88,7 +88,7 @@ async def get_file(request: Request, owner: str, repo: str, path: str):
async def save_file(request: Request, owner: str, repo: str):
"""Create or update a file in the repo."""
import json
gitea = _require_user_gitea(request)
gitea = _require_gitea(request) # admin token can write too
try:
body = await request.json()
except Exception:
@@ -111,7 +111,7 @@ async def save_file(request: Request, owner: str, repo: str):
async def delete_file(request: Request, owner: str, repo: str):
"""Delete a file from the repo."""
import json
gitea = _require_user_gitea(request)
gitea = _require_gitea(request) # admin token can write too
path = request.query_params.get("path", "")
sha = request.query_params.get("sha", "")
message = request.query_params.get("message", "Delete via FlowDeck")
+1 -1
View File
@@ -9,7 +9,7 @@
</button>
<div class="topbar-left">
<a href="/workspaces" class="breadcrumb" style="color:rgba(255,255,255,.5);text-decoration:none;">Home</a>
<span class="page-title-topbar" x-text="owner + '/' + repo"></span>
<span class="page-title-topbar">{{ owner }}/{{ repo }}</span>
</div>
<div class="topbar-right">
<button class="page-action-btn" @click="refreshTree()" title="Refresh">🔄</button>
+1 -16
View File
@@ -259,22 +259,7 @@
<div class="setting-row">
<div>
<div class="setting-label">Workspace name</div>
<div class="setting-desc" x-text="'{{ workspace_name }}'"></div>
</div>
</div>
<div class="setting-row">
<div>
<div class="setting-label">Default view</div>
<div class="setting-desc">Choose the default view for new pages</div>
</div>
<div class="setting-control">
<select class="settings-select" x-model="defaultView" @change="saveDefaultView()">
<option value="tree">🌳 Tree</option>
<option value="list">📋 List</option>
<option value="details">📊 Details</option>
<option value="title">🏷️ Cards</option>
<option value="content">📝 Content</option>
</select>
<div class="setting-desc">{{ workspace_name }}</div>
</div>
</div>
</div>