Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 5 additions & 5 deletions frontend/internal/handlers/admin_api_keys.go
Original file line number Diff line number Diff line change
Expand Up @@ -55,15 +55,15 @@ func (h *PageHandler) AdminAPIKeysList(w http.ResponseWriter, r *http.Request) {
return
}
h.renderPage(w, r, "admin_api_keys", AdminAPIKeyListData{
TemplateData: h.baseData(r, "admin"),
TemplateData: h.baseData(r, "admin-api-keys"),
Keys: keys,
})
}

// AdminAPIKeysNew handles GET /admin/api-keys/new — Erstell-Formular anzeigen.
func (h *PageHandler) AdminAPIKeysNew(w http.ResponseWriter, r *http.Request) {
h.renderPage(w, r, "admin_api_keys_create", AdminAPIKeyCreateData{
TemplateData: h.baseData(r, "admin"),
TemplateData: h.baseData(r, "admin-api-keys"),
})
}

Expand Down Expand Up @@ -101,14 +101,14 @@ func (h *PageHandler) AdminAPIKeysCreate(w http.ResponseWriter, r *http.Request)
plaintext, prefix, apiErr := h.createAPIKey(r, payload)
if apiErr != nil {
h.renderPage(w, r, "admin_api_keys_create", AdminAPIKeyCreateData{
TemplateData: h.baseData(r, "admin"),
TemplateData: h.baseData(r, "admin-api-keys"),
Error: apiErr.Error(),
})
return
}

h.renderPage(w, r, "admin_api_keys_create", AdminAPIKeyCreateData{
TemplateData: h.baseData(r, "admin"),
TemplateData: h.baseData(r, "admin-api-keys"),
Plaintext: plaintext,
Prefix: prefix,
})
Expand All @@ -123,7 +123,7 @@ func (h *PageHandler) AdminAPIKeyDetail(w http.ResponseWriter, r *http.Request)
return
}
h.renderPage(w, r, "admin_api_keys_detail", AdminAPIKeyDetailData{
TemplateData: h.baseData(r, "admin"),
TemplateData: h.baseData(r, "admin-api-keys"),
Key: *key,
})
}
Expand Down
14 changes: 7 additions & 7 deletions frontend/internal/handlers/admin_printers.go
Original file line number Diff line number Diff line change
Expand Up @@ -84,7 +84,7 @@ func (h *PageHandler) ListPrintersPage(w http.ResponseWriter, r *http.Request) {
return
}
h.renderPage(w, r, "admin_printers", AdminPrinterListData{
TemplateData: h.baseData(r, "admin"),
TemplateData: h.baseData(r, "admin-printers"),
Printers: printers,
IncludeDisabled: includeDisabled,
})
Expand All @@ -97,7 +97,7 @@ func (h *PageHandler) ListPrintersPage(w http.ResponseWriter, r *http.Request) {
// NewPrinterPage behandelt GET /admin/printers/new — leeres Erstell-Formular.
func (h *PageHandler) NewPrinterPage(w http.ResponseWriter, r *http.Request) {
h.renderPage(w, r, "admin_printers_form", AdminPrinterFormData{
TemplateData: h.baseData(r, "admin"),
TemplateData: h.baseData(r, "admin-printers"),
IsEdit: false,
})
}
Expand All @@ -123,7 +123,7 @@ func (h *PageHandler) CreatePrinter(w http.ResponseWriter, r *http.Request) {

// Formular-Daten für Rerender bei Fehler
formData := AdminPrinterFormData{
TemplateData: h.baseData(r, "admin"),
TemplateData: h.baseData(r, "admin-printers"),
IsEdit: false,
FormName: name,
FormSlug: slug,
Expand Down Expand Up @@ -190,7 +190,7 @@ func (h *PageHandler) PrinterDetailPageWithSlug(w http.ResponseWriter, r *http.R
return
}
h.renderPage(w, r, "admin_printers_detail", AdminPrinterDetailData{
TemplateData: h.baseData(r, "admin"),
TemplateData: h.baseData(r, "admin-printers"),
Printer: *printer,
})
}
Expand Down Expand Up @@ -256,7 +256,7 @@ func (h *PageHandler) EditPrinterPageWithSlug(w http.ResponseWriter, r *http.Req
}

h.renderPage(w, r, "admin_printers_form", AdminPrinterFormData{
TemplateData: h.baseData(r, "admin"),
TemplateData: h.baseData(r, "admin-printers"),
Printer: printer,
IsEdit: true,
Slug: slug,
Expand Down Expand Up @@ -294,7 +294,7 @@ func (h *PageHandler) UpdatePrinterWithSlug(w http.ResponseWriter, r *http.Reque
snmpCommunity := r.FormValue("snmp_community")

formData := AdminPrinterFormData{
TemplateData: h.baseData(r, "admin"),
TemplateData: h.baseData(r, "admin-printers"),
IsEdit: true,
Slug: slug,
FormName: name,
Expand Down Expand Up @@ -353,7 +353,7 @@ func (h *PageHandler) DisablePrinterConfirmPageWithSlug(w http.ResponseWriter, r
return
}
h.renderPage(w, r, "admin_printers_confirm_disable", AdminPrinterConfirmData{
TemplateData: h.baseData(r, "admin"),
TemplateData: h.baseData(r, "admin-printers"),
Printer: *printer,
})
}
Expand Down
2 changes: 1 addition & 1 deletion frontend/internal/handlers/base.go
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@ import (
// Every page template receives at minimum these fields.
type TemplateData struct {
Version string // Build-Version aus Env (z.B. "1.2.3")
ActiveNav string // "dashboard" | "jobs" | "templates" | ""
ActiveNav string // "dashboard" | "jobs" | "templates" | "admin-printers" | "admin-api-keys" | ""
Error string // Nicht-leer bei Fehlerseiten
CSRFField template.HTML // gorilla/csrf Hidden-Input für POST-Forms; leer auf GET-only-Seiten
}
Expand Down
9 changes: 5 additions & 4 deletions frontend/web/templates/layout.html
Original file line number Diff line number Diff line change
Expand Up @@ -14,10 +14,11 @@
<nav class="bg-surface-raised border-b border-surface-border">
<div class="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 flex items-center h-14 gap-6">
<a href="/" class="font-semibold text-primary">Label Printer Hub</a>
<a href="/" class="nav-link {{if eq .ActiveNav "dashboard"}}nav-link-active{{end}}">Dashboard</a>
<a href="/jobs" class="nav-link {{if eq .ActiveNav "jobs"}}nav-link-active{{end}}">Jobs</a>
<a href="/templates" class="nav-link {{if eq .ActiveNav "templates"}}nav-link-active{{end}}">Templates</a>
<a href="/admin/api-keys" class="nav-link {{if eq .ActiveNav "admin"}}nav-link-active{{end}}">API Keys</a>
<a href="/" class="nav-link {{if eq .ActiveNav "dashboard"}}nav-link-active{{end}}">Dashboard</a>
<a href="/jobs" class="nav-link {{if eq .ActiveNav "jobs"}}nav-link-active{{end}}">Jobs</a>
<a href="/templates" class="nav-link {{if eq .ActiveNav "templates"}}nav-link-active{{end}}">Templates</a>
<a href="/admin/printers" class="nav-link {{if eq .ActiveNav "admin-printers"}}nav-link-active{{end}}">Drucker</a>

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

Die Navigationsleiste verwendet ansonsten englische Begriffe ("Dashboard", "Jobs", "Templates", "API Keys"). Um die Benutzeroberfläche konsistent zu halten, sollte dieser Link ebenfalls auf Englisch ("Printers") beschriftet werden.

Suggested change
<a href="/admin/printers" class="nav-link {{if eq .ActiveNav "admin-printers"}}nav-link-active{{end}}">Drucker</a>
<a href="/admin/printers" class="nav-link {{if eq .ActiveNav "admin-printers"}}nav-link-active{{end}}">Printers</a>

<a href="/admin/api-keys" class="nav-link {{if eq .ActiveNav "admin-api-keys"}}nav-link-active{{end}}">API Keys</a>
</div>
</nav>
<main class="flex-1 max-w-7xl mx-auto w-full px-4 py-6 sm:px-6 lg:px-8">
Expand Down
Loading