Entwurf: die Seitenleiste der Konsole neu geordnet
Achtundzwanzig Eintraege in sieben Gruppen, und 'System' war der Platz fuer alles, was sonst nirgends hinpasste. Der Entwurf haelt zwei Entscheidungen des Betreibers fest: Selten-Benutztes verlaesst die Seitenleiste in einen eigenen Einrichtungsbereich, und die drei Seiten, auf denen etwas wartet, stehen als eigener Block ganz oben — mit einer Zahl daneben. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>claude/nice-moser-521659
parent
ceefaf1745
commit
8174ad77cc
|
|
@ -0,0 +1,118 @@
|
|||
# Die Seitenleiste der Konsole — Entwurf
|
||||
|
||||
**Stand:** 2026-08-04 · freigegeben vom Betreiber
|
||||
|
||||
## Warum
|
||||
|
||||
Achtundzwanzig Einträge in sieben Gruppen, und die Aufteilung hielt keine Regel
|
||||
durch. Die Gruppe „System" war der Platz für alles, was sonst nirgends hinpasste:
|
||||
Mail-Einrichtung neben einem Rechtsdokument, neben den persönlichen
|
||||
Kontoeinstellungen, neben der Mitarbeiterverwaltung, und ganz unten eine
|
||||
Aufgabenliste. Der Betreiber hat es so beschrieben: „offene Punkte ist der letzte
|
||||
Punkt, dann Rolle drüber und Einstellungen wieder drüber — irgendwie passt die
|
||||
Aufteilung überhaupt nicht zusammen."
|
||||
|
||||
Dazu kam die Streuung: Mail lag in **drei** Gruppen — Versandtakt unter *Betrieb*,
|
||||
Protokoll und Vorlagen unter *Post*, die Einrichtung unter *System*.
|
||||
|
||||
Und die Seite, die sagt, was liegt („Offene Punkte"), stand ganz unten.
|
||||
|
||||
## Die zwei Entscheidungen
|
||||
|
||||
**Erstens: Selten benutztes verlässt die Seitenleiste.** Was man einmal einrichtet
|
||||
und danach kaum wieder anfasst, kommt in einen eigenen Bereich hinter einem
|
||||
einzigen Eintrag. Der Betreiber hat dabei entschieden, dass **Pakete**,
|
||||
**Vorlagen** und **Mail-Vorschau** ebenfalls dorthin gehören — Rechenzentren,
|
||||
Proxy-Hosts und VPN dagegen bleiben im Tagesgeschäft.
|
||||
|
||||
**Zweitens: „Braucht dich" steht oben.** Drei Seiten, auf denen etwas auf jemanden
|
||||
wartet, bilden einen eigenen Block ganz oben, mit einer Zahl daneben. Das ist die
|
||||
Frage, mit der man eine Konsole öffnet — *muss ich gerade etwas tun?* — und sie
|
||||
wurde bisher nirgends beantwortet.
|
||||
|
||||
## Die Seitenleiste
|
||||
|
||||
```
|
||||
Übersicht
|
||||
|
||||
BRAUCHT DICH
|
||||
Offene Punkte 7
|
||||
Störungen 2
|
||||
Zahlungsprobleme 1
|
||||
|
||||
KUNDEN Kunden · Instanzen
|
||||
MASCHINEN Hosts · Rechenzentren · Kapazität · Proxy-Hosts · VPN
|
||||
LÄUFT GERADE Bereitstellung · Wartung · Versandtakt
|
||||
GELD Umsatz · Rechnungen · Finanzen
|
||||
POST Posteingang · Mail-Protokoll
|
||||
|
||||
Einrichtung
|
||||
```
|
||||
|
||||
Zwanzig Einträge statt achtundzwanzig, und **jede Seite steht genau einmal**.
|
||||
Störungen zieht aus *Läuft gerade* nach oben, Zahlungsprobleme aus *Geld* — sie
|
||||
ziehen um, sie verdoppeln sich nicht. Eine Seite an zwei Stellen ist ihre eigene
|
||||
Verwirrung.
|
||||
|
||||
## Die Zahlen
|
||||
|
||||
| Eintrag | Quelle | Kosten |
|
||||
|---|---|---|
|
||||
| Offene Punkte | `Register::counts()` | im Speicher, keine Abfrage |
|
||||
| Störungen | ungelöste Störungen | eine Zählabfrage |
|
||||
| Zahlungsprobleme | unbeglichene Fälle | eine Zählabfrage |
|
||||
|
||||
Zwei Abfragen je Seitenaufruf, für 60 Sekunden zwischengespeichert. Die
|
||||
Seitenleiste rendert auf jeder Konsolenseite; ohne Zwischenspeicher wäre das eine
|
||||
Abgabe, die man später sucht.
|
||||
|
||||
**Bei null erscheint keine Plakette, der Eintrag bleibt stehen, die Gruppe bleibt
|
||||
stehen.** Ein Block, der mal da ist und mal nicht, lässt einen suchen, ob man ihn
|
||||
übersehen hat — und eine Seite, die bei null verschwindet, ist bei null nicht mehr
|
||||
erreichbar.
|
||||
|
||||
## Der Einrichtungsbereich
|
||||
|
||||
Ein Eintrag unten in der Seitenleiste, dahinter eine Seite mit Kacheln in vier
|
||||
Gruppen:
|
||||
|
||||
- **Zustellung** — E-Mail · Vorlagen · Mail-Vorschau
|
||||
- **Angebot** — Pakete
|
||||
- **Zugang** — Rollen · Einstellungen · Integrationen
|
||||
- **Haus** — Bereitschaft · AV-Vertrag
|
||||
|
||||
Bewusst **keine Reiterleiste**: neun Reiter wären wieder das, was wir gerade
|
||||
abschaffen. Bewusst **kein Zusammenlegen der Seiten**: sie behalten ihre Routen,
|
||||
ihre Berechtigungen und ihren Inhalt. Es ändert sich nur der Weg dorthin. Damit
|
||||
bleibt der Umbau klein und rückholbar; ob einzelne dieser Seiten später
|
||||
verschmelzen, ist eine eigene Entscheidung mit eigenem Entwurf.
|
||||
|
||||
Eine Kachel, für die die Berechtigung fehlt, erscheint nicht — dieselbe Regel, die
|
||||
die Seitenleiste heute schon je Eintrag anwendet.
|
||||
|
||||
## Was im Code passiert
|
||||
|
||||
| Stelle | Änderung |
|
||||
|---|---|
|
||||
| `App\Support\Navigation::console()` | neue Gruppen, Einträge umsortiert, Zählschlüssel je Eintrag |
|
||||
| `resources/views/components/shell/nav.blade.php` | optionale Zählplakette neben einem Eintrag |
|
||||
| `App\Livewire\Admin\Setup` + Route + `lang/{de,en}/setup.php` | die neue Kachelseite |
|
||||
| `App\Support\Navigation` | die drei Zahlen, zwischengespeichert |
|
||||
|
||||
`Navigation::currentLabel()` trifft über den **Routennamen**, nicht über den Pfad —
|
||||
Einträge zwischen Gruppen zu verschieben bricht die Brotkrumen also nicht.
|
||||
|
||||
## Zusicherungen (Tests)
|
||||
|
||||
1. Jede Konsolenseite steht in der Seitenleiste oder im Einrichtungsbereich —
|
||||
**genau einmal**, nirgends zweimal, keine fällt heraus.
|
||||
2. Eine Kachel und ein Seitenleisteneintrag ohne Berechtigung erscheinen nicht.
|
||||
3. Bei null erscheint keine Plakette; der Eintrag bleibt trotzdem da.
|
||||
4. Die Zahlen kommen aus dem Zwischenspeicher, nicht bei jedem Aufruf aus der
|
||||
Datenbank.
|
||||
|
||||
## Offen gelassen
|
||||
|
||||
Der Betreiber hat zugestimmt mit dem Vorbehalt, sich „Braucht dich" erst ansehen zu
|
||||
wollen. Fällt der obere Block weg, bleibt die Ordnung darunter unverändert
|
||||
bestehen — sie ist unabhängig davon entworfen.
|
||||
Loading…
Reference in New Issue