{{/* Gemeinsame Bausteine aller Seiten. Statt eines verschachtelten Layout-Templates gibt es hier Blöcke, die jede Seite einbindet. Das ist etwas mehr Tipparbeit je Seite, dafür braucht es keine Template-Vererbung — und man sieht jeder Seitendatei an, wie sie aufgebaut ist. html-anfang / html-ende Dokumentrahmen (auch von der Anmeldeseite genutzt) kopf / fuss Rahmen, Kopfleiste und Seitenleiste */}} {{define "html-anfang"}} {{.Title}} – Munin {{end}} {{define "html-ende"}} {{end}} {{define "kopf"}}{{template "html-anfang" .}} {{/* Schmale Kopfleiste über die ganze Breite: Marke, Workspace-Umschalter und Abmelden. Alles Weitere steht in der Seitenleiste. Der Umschalter steht bewusst hier statt in der Seitenleiste — ein Plattform-Admin mit mehreren Abteilungen muss auf jeder Seite sehen, WELCHEN Workspace er gerade bearbeitet, nicht nur auf der Auswahlseite selbst. Für einen Projekt-Zugang (immer genau ein Workspace) bleibt der Umschalter weg — WorkspaceName ist dann leer. */}}
Munin {{if .Session.IsPlatformAdmin}}{{if .Session.WorkspaceName}} {{.Session.WorkspaceName}} {{end}}{{else if .Session.IsWorkspaceAdmin}} {{/* Der Workspace-Admin hat genau einen Workspace — der Name steht zur Orientierung da, ohne Umschalter. */}} {{.Session.WorkspaceName}} {{end}}
{{/* ── Seitenleiste ────────────────────────────────────────────────────── Enthält drei Gruppen: die Projekte, die Bereiche des aktuellen Projekts und dessen Schlagworte. Die Schlagworte stehen hier statt als Filterzeile über der Liste — sie sind Navigation, und die Liste bekommt so mehr Platz. */}}
{{if .Error}}
{{.Error}}
{{end}} {{if .Flash}}
{{.Flash}}
{{end}} {{end}} {{/* hilfelink setzt ein kleines "?" neben eine Überschrift oder ein Feld, das zur passenden Stelle der eingebauten Hilfe führt (AUSBAUSTUFEN.md 5.4). Aufruf mit dem Ziel unterhalb von /hilfe/, auf Wunsch mit Abschnitt: {{template "hilfelink" "weboberflaeche#markdown-im-inhalt"}} Die Abschnittsnamen entstehen aus den Überschriften der Hilfeseiten (internal/markdown, ankerIDs). Ein Test in web_test.go prüft, dass jedes Ziel in den Templates wirklich existiert — wer eine Überschrift umbenennt, merkt es also. Die Hilfe öffnet in einem neuen Tab: Wer mitten im Bearbeiten nachschlägt, soll dabei nicht seinen ungespeicherten Text verlieren. rel="noopener" verhindert, dass der neue Tab auf das Fenster dieser Seite zugreifen kann. */}} {{define "hilfelink"}}?{{end}} {{define "fuss"}}
{{template "html-ende" .}} {{end}}