Tenant-Feature Phase 5: Kontextsensitiver BackLink in Manage-UI

- manageData: BackLink/BackLabel Felder ergänzt
- HandleManageUI: ?from=tenant → "← Dashboard", sonst "← Admin"
- manageTmpl: hardcoded "← Admin" durch {{.BackLabel}}/{{.BackLink}} ersetzt

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
Jesko Anschütz 2026-03-23 19:12:43 +01:00
parent fb8d598e9e
commit ae5dfbd210
2 changed files with 17 additions and 1 deletions

View file

@ -530,7 +530,7 @@ const manageTmpl = `<!DOCTYPE html>
<nav class="navbar is-dark" role="navigation" aria-label="main navigation"> <nav class="navbar is-dark" role="navigation" aria-label="main navigation">
<div class="navbar-brand"> <div class="navbar-brand">
<a class="navbar-item" href="/admin"> Admin</a> <a class="navbar-item" href="{{.BackLink}}">{{.BackLabel}}</a>
<span class="navbar-item"> <span class="navbar-item">
<strong>{{.Screen.Name}}</strong> <strong>{{.Screen.Name}}</strong>
&nbsp; &nbsp;

View file

@ -125,6 +125,20 @@ func HandleManageUI(
} }
} }
// Determine back-navigation based on ?from= query parameter.
backLink := "/admin"
backLabel := "← Admin"
if r.URL.Query().Get("from") == "tenant" {
tenantSlug := ""
if u := reqcontext.UserFromContext(r.Context()); u != nil && u.TenantSlug != "" {
tenantSlug = u.TenantSlug
}
if tenantSlug != "" {
backLink = "/tenant/" + tenantSlug + "/dashboard"
backLabel = "← Dashboard"
}
}
w.Header().Set("Content-Type", "text/html; charset=utf-8") w.Header().Set("Content-Type", "text/html; charset=utf-8")
t.Execute(w, map[string]any{ //nolint:errcheck t.Execute(w, map[string]any{ //nolint:errcheck
"Screen": screen, "Screen": screen,
@ -133,6 +147,8 @@ func HandleManageUI(
"Items": items, "Items": items,
"Assets": assets, "Assets": assets,
"AddedAssets": addedAssets, "AddedAssets": addedAssets,
"BackLink": backLink,
"BackLabel": backLabel,
}) })
} }
} }